0
Existe-t-il un moyen d'obtenir une ligne qui a le MAX() lorsque deux champs sont considérés, en donnant l'un d'entre eux la priorité. Par exempleHierarchical MAX
ID Column_A Column_B
----------------------------
1 1 3
2 3 2
3 2 2
4 3 1
reviendriez
ID Column_A Column_B
----------------------------
2 3 2
Parce que sont MAX sur column_a est à la fois ID 2 et 4, mais # 2 "victoires" sur Column_B.
Ce que je voudrais cette requête à faire, en pseudocode:
If (It's the MAX on A, tied with nothing)
Return it
Else If (It's tied for MAX on A and it's MAX [or tied] on B)
Return it
Existe-t-il une condition que je pourrais mettre dans une clause WHERE ou HAVING? Parce que je l'utilise dans une autre requête qui nécessite plusieurs lignes. – babonk
Vous pourriez mettre une clause 'WHERE' après le' FROM' et avant le 'ORDER BY'. Si vous utilisez ceci dans une autre requête, vous pouvez supprimer la clause 'LIMIT'. Vous ne pouvez pas utiliser 'HAVING' sans une clause' GROUP BY', et je ne vois aucun de ceux-ci apparaître dans la description du problème. –
Puisque c'est le MAX qu'il veut, il devrait être: ORDER BY Column_A DESC, Column_B DESC –