Maison >base de données >tutoriel mysql >Une clause « ORDER BY » dans une sous-requête est-elle réellement utile ?

Une clause « ORDER BY » dans une sous-requête est-elle réellement utile ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-18 11:34:09610parcourir

Does an `ORDER BY` Clause in a Subquery Actually Help?

Une clause 'Order By' est-elle bénéfique dans une sous-requête ?

L'utilisation d'une clause 'order by' dans une sous-requête soulève la question de si c'est une pratique bénéfique. La réponse, cependant, est un « non » catégorique. Conceptuellement, cela ne sert à rien.

La sous-requête est intégrée dans une requête externe qui détermine finalement l'ordre des résultats. Par conséquent, tout ordre imposé par la clause « order by » dans la sous-requête devient redondant. De plus, l'ordre en SQL n'hérite pas par défaut.

L'ordre des résultats de la requête externe reste inchangé quel que soit l'ordre spécifié dans la sous-requête. Par conséquent, l'utilisation de « order by » dans une sous-requête est généralement considérée comme inutile.

Bien que des implémentations spécifiques de SGBDR puissent se comporter différemment en raison de leurs caractéristiques individuelles, il est déconseillé de s'appuyer sur de tels comportements spécifiques à l'implémentation.

Exception : Si la sous-requête utilise des clauses 'TOP' ou 'LIMIT', alors une 'commande' by' devient nécessaire pour déterminer le sous-ensemble de résultats à sélectionner. Cependant, il est important de noter que ces clauses ne font pas partie des spécifications SQL standards.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn