Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come ottenere record distinti da una tabella in SQL Server - Tutorial SQL Server / TSQL 112

Scenario:

Stai lavorando come sviluppatore di SQL Server, devi ottenere record distinti (diversi) da una tabella. Quale istruzione utilizzerai per ottenere record univoci da una tabella.


Soluzione:

Seleziona distinto può essere utilizzato per ottenere record diversi da una tabella. La sintassi per Seleziona distinto è

Seleziona distinta Colonna1, Colonna2, Colonna3.... da SchemaName.TableName.

Creiamo una tabella dbo.Customer di esempio e quindi inseriamo i record di test utilizzando le istruzioni seguenti.

--Create dbo.Customer table
Create table dbo.Customer(
Id int,
Name VARCHAR(10),
Address VARCHAR(100))

--Insert records in dbo.Customer table
Insert into dbo.Customer
Values(1,'Aamir','XyZ Address')
,(2,'Raza',Null)
,(1,'Aamir','XyZ Address')
,(3,'John','XyZ Address')
 
 Come puoi vedere, abbiamo il record duplicato 1,'Aamir','Indirizzo XyZ. Ora, se desideriamo ottenere record distinti da questa tabella, possiamo utilizzare la query seguente. Se tutte le colonne sono coinvolte nella tua selezione, puoi utilizzare * come mostrato di seguito o digitare i nomi delle colonne.

Select distinct * From dbo.Customer
 
OR
Select distinct ID,Name,Address From dbo.Customer
 
Come ottenere record distinti dalla tabella SQL Server - Tutorial SQL Server/TSQL
 
Come possiamo vedere, la nostra query ha restituito record distinti. Nella tabella erano presenti record duplicati, ma vengono visualizzati solo distinti poiché abbiamo utilizzato Distinct nella nostra istruzione Select.

Puoi sempre eseguire distinti su una o più colonne, se lo desideri. Se voglio ottenere solo nomi distinti dalla tabella dbo.Customer, posso utilizzare la query seguente.

Select distinct Name From dbo.Customer
Come utilizzare Distinct in Select query in SQL Server per ottenere record (differenze) distinti