Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
"SELECT FROM (SELECT FROM tbl_os_status ORDER BY id DESC) sub_query GROUP BY numero_os ORDER BY id DESC"
Estou tendo problemas com essa consulta em alguns servidores mysql.
Como ficaria esta query para ser totalmente compatível com outras versões do mysql?
Ok Motta, porém eu preciso agrupar também pelo número da os.
Se eu colocar somente:
SELECT * FROM tbl_os_status GROUP BY número_os
ele pega os primeiros resultados e depois agrupa e o que eu preciso é que ele pegue os últimos resultados e depois agrupe.
Alguma ideia?
"SELECT * FROM tbl_os_status ORDER BY numero_os,id DESC"
?
Amigo mesmo assim não está agrupando, troquei o ORDER BY por GROUP BY, na query que você passou porém não deu certo.
"SELECT * FROM tbl_os_status GROUP BY numero_os,id DESC",
se eu tirar o "id DESC" ele agrupa, porém fica mostrando o primeiro e eu preciso do último resultado
Consegui resolver usando a query abaixo, depois de muito bater a cabeça encontrei essa query na internet, só tive que adaptar ao meu código, porém estou com dificuldade de entender a condição WHERE de n1.id, se alguém poder me ajudar a interpretar.
Outra coisa como é o nome dado a esse "apelido" usado n1 e n2? Pra eu poder pesquisar mais sobre ele.
SELECT n1.* FROM tbl_os_status n1 WHERE n1.id = (SELECT max(n2.id) FROM tbl_os_status n2 WHERE n2.numero_os = n1.numero_os) ORDER BY n1.id DESC
"SELECT * FROM tbl_os_status ORDER BY id DESC"