Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So geben Sie die Sortierung in einer Abfrage in SQL Server (T-SQL) an

In Datenbanksystemen bestimmt die Sortierung, wie Daten in einer Datenbank sortiert und verglichen werden. Zum Beispiel, wenn Sie eine Abfrage mit ORDER BY ausführen -Klausel legt die Sortierung fest, ob Großbuchstaben und Kleinbuchstaben gleich behandelt werden.

In SQL Server wird die Sortierung auf Serverebene, Datenbankebene und Spaltenebene angegeben.

Die Sortierung kann auch auf einen Zeichenfolgenausdruck angewendet werden, um eine Sortierungsumwandlung anzuwenden. Sie können beispielsweise den COLLATE verwenden -Klausel in einem T-SQL SELECT -Anweisung, um die zu verwendende Sortierung anzugeben. So:

USE Music;
SELECT ArtistId, ArtistName
FROM Artists
ORDER BY ArtistName COLLATE Latin1_General_CI_AI;

Diese Sortierung verwendet CI für case-insensitive und AI für Akzent-unempfindlich.

Wir könnten das in CS ändern für Groß- und Kleinschreibung und AS für akzentsensitiv, und die Abfrageergebnisse können anders sortiert werden (abhängig von den Daten):

USE Music;
SELECT ArtistId, ArtistName
FROM Artists
ORDER BY ArtistName COLLATE Latin1_General_CS_AS;

Auf diese Weise können Sie also die Sortierung überschreiben, die beim Ausführen einer Abfrage auf Datenbank- oder Spaltenebene angewendet wird.

Sie können T-SQL verwenden, um die Sortierung des Servers, der Datenbank und einer Spalte zu überprüfen.