ajuda no union

1. ajuda no union

thiago
iceoz

(usa Debian)

Enviado em 13/05/2009 - 11:24h

Gente tenho um probleminha que se eu nun resolve o cara pode mudar de ideia e eu vo ter um problemão ahuauhaa.

(SELECT * FROM produtos p where lancamento<=now() and quantidade>0 and destaque=1 and validade_destaque>=now())
UNION
(SELECT * FROM produtos p where lancamento<=now() and quantidade>0)

bom tah ai tah funcionando. o unico problema é que preciso que o primeiro select seja order by rand().

eu até fiz uma tentativa frustrada tipo assim no primeiro select.
SELECT * FROM produtos p
where lancamento<=now()
and quantidade>0
and destaque=1
and validade_destaque>=now()
and id =
(SELECT id FROM produtos p
where lancamento<=now()
and quantidade>0
and destaque=1
and validade_destaque>=now()
order by rand() limit 1)

mais as vezes traz 1 resultado as vezes traz mais de 1 as vezes nun traz nada. aghauhauua
mysql bem loco ou eu bem loco nun sei mais. me ajudem meu forte nun é sql



  


2. Re: ajuda no union

Willians
icefusion

(usa Debian)

Enviado em 29/06/2009 - 11:50h

eu aconselho vc testar o select direto no banco com o comportamento desejado...e ir trocando até q ele funcione e tenha o resultado esperado....
no meu caso eu uso o EMS MySQL Manager Lite para tratar dessa parte!


3. Re: ajuda no union

Mateus
mtarcinalli

(usa Debian)

Enviado em 29/06/2009 - 14:37h

Eu achei uma mensagem dizendo que essa função rand tem um bug quando usada no PHP em um servidor Windows, mas que no Linux funciona.

http://lists.evolt.org/archive/Week-of-Mon-20021230/131159.html
Talvez seja esse o problema.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts