Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Faelzindc

Listar primeiro os dados com país = br e com ORDER BY

Recommended Posts

Eai galera, beleza?

O que eu quero fazer, é que na minha consulta exibe primeiro os que "país = 'br'" com order by em outra coluna, e depois listar o resto dos dados. Só que eu gostaria de fazer isso em apenas uma query, pois vou usar paginação. Tem como eu fazer isso?

 

Na gambiarra seria:

mysql_query("SELECT pais, tipo from tabela WHERE pais=br ORDER BY tipo");
mysql_query("SELECT pais, tipo from tabela WHERE pais!=br ORDER BY tipo");

 

Entenderam? Obrigado desde já. Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta isso cara:

 

SELECT '1' ,pais, tipo from tabela WHERE pais=br

union

SELECT '2', pais, tipo from tabela WHERE pais=br

ORDER BY 1, tipo

 

 

O primeiro campo serve apenas para ordenar do jeito que você quer.

 

se não quiser mostrar o numero 1 e 2 você pode fazer o seguite:

 

select pais, tipo from

(SELECT '1' ,pais, tipo from tabela WHERE pais=br

union

SELECT '2', pais, tipo from tabela WHERE pais=br

ORDER BY 1, tipo) as dados

 

Abrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use um case

 

SELECT pais, tipo 
from tabela 
ORDER BY (case pais = 'br' then 0 else 1 end),tipo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.