Ir para conteúdo

Arquivado

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

uhelliton

Select na tabela, listando um valor fixo e exibindo os demais

Recommended Posts

Boa noite pessoal.

Esse é meu primeiro post, talvez não consiga me expressa da forma correta.

Minha dúvida é o seguinte: Recentemente entrei no website da Olx, e percebi que na lista de exibição dos anúncios mesmo usando um filtro como, por exemplo: ordenando por menor ou maior preço, os anúncios Destaque sempre retorna na 1ª posição da query.

 

Há alguma possibilidade de fazer algo desse tipo usando apenas instruções SQL? Listando sempre um paramento fixo, por exemplo: Anúncios Destaques e depois listando os demais, mesmo usando filtro, os Destaques ficam sempre nas primeiras posições da listagem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredita! :dormindo:

 

Ou não soube montar a query? :assobiando:

SELECT SQL_CACHE * (CASE plano_destaque WHEN '5' THEN 5 WHEN '4' THEN 4 WHEN '3' THEN 3 WHEN '2' THEN 2 WHEN '1' THEN 1 ELSE 0 END ) AS plano FROM lista ORDER BY plano DESC, nome ASC

Acredito que saiba pelo menos usar a cláusula where

 

plano_destaque => tipo int

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mano, no bd, cria a coluna "ordem" em INT....

 

dai na query da select tu botar exemplo: ORDER BY ordem, nome........

 

 

dai no valor da coluna tu coloca as que queis no topo com o valor 1, as a seguir com valor 2......... e assim consecutivamente!!

 

talvez se quiser colocar um fundo na linha de ordem='1', você faz:

 

$abrelinha = ($ordem == '1') ? '<p background-color:xxx;>' : '<p>';

$fechalinha = ($ordem == '1') ? '</p>' : '</p>';

 

e subistitui na echo, <p> por $abrelinha e o </p> por $fechalinha

 

assim consecutivamente, pode fazer até mesmo com divs.....

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.