Frage

Ich habe eine einfache Ansicht erstellt, bestehend aus 3 Tabellen in SQL.

Mit einem Rechtsklick und Entwurf, im Objekt-Explorer-Tabelle, modifizierte ich meine benutzerdefinierte Ansicht. Ich habe gerade hinzugefügt sortby asc in einem Feld.

Das Problem ist, dass die Änderungen nicht in der outout der Ansicht reflektiert werden. Nach der Ansicht zu speichern, und wählen Sie Sicht: die Sortierung nicht in der Ausgabe angezeigt wird.

Also, was ist hier los?

War es hilfreich?

Lösung

Technisch ist es möglich, in eine VIEW zu backen Sortier aber es wird dringend abgeraten. Stattdessen sollten Sie Art anwenden, während aus der Sicht der Auswahl wie folgt:

Select ...
From MyView
Order By SortByCol ASC

Wenn Sie wirklich wissen wollen (aber auch hier würde ich stark gegen diese empfehlen), können Sie den TOP Befehl verwenden, um die Begrenzung des Sortierens in der Ansicht zu umgehen:

Select TOP 100 PERCENT * Col1, Col2....
From Table1
Order By SortByCol ASC

Andere Tipps

Es scheint:

Es gibt eine Beschränkung der SELECT-Klauseln in einer Ansichtsdefinition in SQL Server 2000, SQL 2005 und SQL 2008. Eine CREATE VIEW-Anweisung darf keine ORDER BY-Klausel, es sei denn, es auch eine TOP-Klausel in der Auswahlliste der SELECT ist Aussage. Die ORDER BY-Klausel wird nur verwendet, um die Zeilen zu bestimmen, die von der Spitze der Klausel in der Ansichtsdefinition zurückgegeben werden. Die ORDER BY-Klausel übernimmt keine Garantie Ergebnisse bestellt, wenn die Ansicht abgefragt wird, es sei denn, ORDER BY auch in der Abfrage selbst angegeben wird.

Es gibt auch einen Hotfix, dass der Bedarf angewendet werden. Danach sollten Sie Top 100% verwenden, um sicherzustellen, dass der Auftrag durch die Werke.

HTH

Allgemein , Ansichten nicht sortiert werden können.

(Wie andere schon erwähnt, gibt es einen Hack, es zu tun, aber da Sie einen visuellen Abfrage-Designer verwenden, anstatt das Schreiben Ihre Ansicht Definition in SQL, ist es wahrscheinlich schwierig, diese Kerbe zu implementieren.)

Sie haben nicht wirklich „ändern“ Ihre Ansicht, können Sie nur die SELECT-Anweisung geändert, dass EM auszuwählen wurde mit von Ihre Ansicht. Sort-Einstellungen werden in der Sichtdefinition nicht beibehalten.

Wenn Sie die Registerkarte zu schließen, hat EM nicht vergessen Sie nicht Ihre Art Vorliebe für diese Ansicht, so dass, wenn man den Blick wieder zu öffnen, es kommt in beliebiger Reihenfolge SQL Server entscheidet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top