Cette question devait juste être dans ce site :)
ORDER BY est interdit d'utiliser dans une vue, comme je l'ai compris en raison de la possibilité de plusieurs commandes par lors de l'utilisation de cette vue.
Je sais qu'il existe des moyens de contourner cette limitation, par exemple TOP 99.999999 PERCENT
, mais j'aimerais savoir quelle est la meilleure pratique, pas comment la pirater.
Donc, si je veux créer des vues dans ma base de données pour un usage personnel, ce qui signifie que je veux me connecter à la base de données et simplement voir les données corrigées et triées, comment dois-je le faire si je ne peux pas commander une vue?
Actuellement, dans ma base de données SQL Server, j'ai des vues avec le TOP
hack, et je les utilise beaucoup, mais ça ne va pas.
la source
Réponses:
Une vue "ordonnée" n'existe pas car une vue est supposée être un ensemble de lignes. Utilisez une procédure stockée si vous souhaitez une commande fixe.
la source
TOP
avecORDER BY
, vous définissez maintenant un nouvel ensemble, car l'ordre affecte les lignes qui sont "en haut"; c'est pourquoiTOP
vous permet d'utiliserORDER BY
dans une définition de vue.Seule la commande la plus externe garantira la commande
Cela inclut ORDER BY dans une vue
Liens
la source
Ajoutez un ORDER BY à la sortie de la vue, c.-à-d.
la source