Geminy Postado Junho 3, 2009 Denunciar Share Postado Junho 3, 2009 Olá!Gente - estou tendo um problema tosco - mas não estou conseguindo sair dele. É o seguinte:1 - eu faço um query usando, p.ex: SELECT x.qid, x.titulo FROM x_tesouros WHERE x_tesouros.qid IN ('5','2','8','12','18','14','31','76','35','37','42','43','48','49','56','55','61','58','62','65')2 - o meu problema é - quando o MYSQL retorna - devolve na seguinte ORDEM:25812141831353742434849555658616265763 - e não é, definitivamente, o que eu quero. preciso manter a ordem de saida igual a ordem de consulta!!!Alguém poderia me ajudar?Obrigado. Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Junho 4, 2009 Denunciar Share Postado Junho 4, 2009 não sei posso até mesmo estar enganado mais acho que isso não via dar certo!precisaria talvez fazer um when talvez para dar certo. Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Junho 5, 2009 Denunciar Share Postado Junho 5, 2009 Oi, 'Geminy'Desculpe a demora na resposta. Só hoje tive tempo de buscar uma solução para seu problema.A solução passa por uma tabela temporária em memória. Esta tabela deve ser criada sem índice primário para não "estragar" a ordenação que você precisa.O código fica assim:create temporary table aux(id int unsigned)engine=memory; insert into aux(id) values (5),(2),(8),(12),(18),(14),(31),(76),(35),(37),(42),(43),(48),(49),(56),(55),(61),(58),(62),(65); select straight_join a.id, x.titulo from aux a inner join x_tesouros x on x.x.qid = a.id; drop table aux;Não esqueça de execurar a última linha (drop table) somente após você terminar de usar o select. Isto fará a liberação da memória, da área ocupada pela tabela temporária. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Geminy
Olá!
Gente - estou tendo um problema tosco - mas não estou conseguindo sair dele. É o seguinte:
1 - eu faço um query usando, p.ex:
2 - o meu problema é - quando o MYSQL retorna - devolve na seguinte ORDEM:3 - e não é, definitivamente, o que eu quero. preciso manter a ordem de saida igual a ordem de consulta!!!
Alguém poderia me ajudar?
Obrigado.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados