sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man ställer in sorteringen av en kolumn i SQL Server (T-SQL)

Som standard använder varje kolumn i en SQL Server-databas den sortering som har angetts på databasnivå. Och som standard tas databassorteringen från serversorteringen. Dessa sorteringsinställningar kan dock åsidosättas, både på databasnivå och kolumnnivå genom att uttryckligen ställa in sorteringen på den nivån.

Den här sidan visar hur man anger sorteringen av en kolumn. Du kan ställa in sorteringen genom att lägga till T-SQL COLLATE sats till CREATE TABLE och ALTER TABLE uttalanden. När du använder dessa påståenden definierar du kolumnen och dess egenskaper, inklusive eventuella sorteringsinställningar. COLLATE klausul är valfri så om du inte inkluderar den kommer kolumnen helt enkelt att använda standardsorteringen av databasen.

Ställ in sorteringen

Här är ett exempel på hur du anger sorteringen när du skapar en tabell:

CREATE TABLE Tasks (
    TaskId int IDENTITY(1,1) NOT NULL PRIMARY KEY,
    TaskName nvarchar(255) COLLATE French_CI_AI NOT NULL
);

Detta skapar en tabell som heter Tasks med två kolumner. Vi ställer in sorteringen av den andra kolumnen (TaskName ) till French_CI_AI . Om vi ​​inte gjorde det skulle den ha använt standarddatabassorteringen.

Ändra sorteringen

I nästa exempel ändrar jag kolumnens sortering till Modern_Spanish_CI_AI_WS :

ALTER TABLE Tasks ALTER COLUMN TaskName
    nvarchar(255) COLLATE Modern_Spanish_CI_AI_WS NOT NULL
GO

Observera att du inte kan ändra sorteringen av en kolumn som refereras av något av följande:

  • En beräknad kolumn
  • Ett index
  • Distributionsstatistik
  • En CHECK begränsning
  • En FOREIGN KEY begränsning

Kontrollera sorteringen

Om du använder SSMS kan du kontrollera sorteringen av valfri kolumn genom att högerklicka på den kolumnen i objektbläddraren och välja Properties .

I Transact-SQL finns det ett par olika sätt att returnera en kolumns sammanställning. Så här kontrollerar du sorteringen av en kolumn med T-SQL.


  1. PostgreSQL v13 distribution och skalning med ClusterControl 1.8.2

  2. Förbered en ny virtuell dator för SQL Server 2014 CTP1

  3. Olika sätt att fylla MySQL-användare

  4. Förstå index i MySQL:Del två