• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

zephirus

Ler tabela sql e obter primeiro certos valores

9 mensagens neste tópico

Olá,

Imaginem uma base de dados com estes valores:

[1] => USA

[2] => Germany

[3] => Russia

[4] => Austria

[5] => China

[6] => Switzerland

Eu quero ler os 6 valores desta tabela sem qualquer tipo de ordem específica excepto que o primeiro tem de ser "Russia". É possível fazer isto? Estou a usar sqlite.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim.

Select * from Tabela where id = id da Russia

union

Select * from Tabela where id <> id da Russia

Podes optar por usar union all, em vez de union.

O union all mostra tudo, o union mostra apenas as linhas distintas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim.

Select * from Tabela where id = id da Russia

union

Select * from Tabela where id <> id da Russia

Podes optar por usar union all, em vez de union.

O union all mostra tudo, o union mostra apenas as linhas distintas.

Olá bruno1234.

A minha base de dados está sempre a mudar e às vezes tenho mais que um valor igual. Por exemplo:

[1] => USA

[2] => Germany

[3] => Russia

[4] => Austria

[5] => China

[6] => Switzerland

[7] => Russia

Neste caso, para "obrigar" a mostrar os dois campos "Russia" primeiro, como fazia?

E já agora outra questão. Posso fazer a query para ordenar por "Russia" mesmo que não exista? Não terei problemas, certo?

Desde já obrigado pela ajuda.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se tens mais q uma Russia não podes filtrar por id, mas sim pelo texto.

Podes ordenar tb.

Select * from Tabela where pais like 'Russia' order by coluna_a_ordenar

union

Select * from Tabela where pais not like 'Russia' order by coluna_a_ordenar

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se tens mais q uma Russia não podes filtrar por id, mas sim pelo texto.

Podes ordenar tb.

Select * from Tabela where pais like 'Russia' order by coluna_a_ordenar

union

Select * from Tabela where pais not like 'Russia' order by coluna_a_ordenar

Sim, o meu id é o texto que quero procurar. Aqui é um exemplo mas no meu programa vai ser por texto porque os valores são únicos. Vou testar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já testei e está a funcionar e a fazer o que pretendo. Obrigado mais uma vez.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Marca como resolvido.

Pois, isso queria eu mas com o novo design isso desapareceu. Sabes onde está?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora