Come utilizzare un alias in una clausola WHERE

October 1

I progettisti di SQL, Structured Query Language, implementato un semplice, concisa serie di comandi che interrogano i dati da database relazionali. SELECT, FROM, WHERE e ORDER BY dagli elementi fondamentali che creano query complesse. Anche così, questi comandi possono crescere in lunghe, le dichiarazioni difficili da leggere quando si recuperano i dati da più tabelle o altre fonti di dati. Gli alias consentono brevi identificatori di sostituire questi nomi di tabella e di colonna lunghi. Si può imparare a utilizzare gli alias per semplificare le query complesse.

istruzione

1 Aprire SQL Server Management Studio per creare un nuovo database. Quando viene visualizzata la schermata di login, inserire "localhost \ SqlExpress" nel nome del server, scegliere l'autenticazione di Windows e fare clic sul pulsante "CONNECT". Quando viene visualizzata la vista ad albero, fare clic destro su "Database" e scegliere "Nuovo database". Viene visualizzata una finestra che richiede per un bel paio di opzioni, ma l'unico elemento necessario è il nome del database, "TestDB" nel primo campo. Fare clic sul pulsante "Aggiungi" per creare il nuovo database.

2 Creare due nuove tabelle nel database TestDB. Ritornare alla vista ad albero, fare clic sul piccolo segno più quindi fare clic destro "TestDB" e scegliere "Nuova query" per espandere i database. Apparirà l'editor di query interattive. Copiare il codice seguente alla finestra:

CREATE TABLE [dbo]. [I clienti]

(

CustomerID chiave primaria int,

CompanyName varchar (30),

ContactName varchar (30)

)

andare

Crea tabella [dbo]. [Vendite]

(

CustomerID int Referenze clienti,

PONumber int,

ImportoVendita denaro,

Chiave primaria (CustomerID, PONumber)

)

andare

Fare clic sul tasto F5 per eseguire lo script. Questo crea due nuovi tavoli, clienti e vendite. Il SQL Server utilizza il prefisso dbo per indicare che le tabelle sono di proprietà del proprietario del database e sono accessibili da tutti gli utenti.

3 Creare una query che unisce le due tabelle ed elenca le singole vendite dal cliente come segue:

Selezionare TestDB.dbo.Customers.CustomerID, CompanyName, PONumber, ImportoVendita

Da Testdb.dbo.Customers sinistra outer join TestDB.dbo.Sales

su TestDB.dbo.Customers.CustomerID = TestDB.dbo.Sales.CustomerID

Dove TestDB.dbo.Customers.CustomerID Fra il 1000 e il 1999

ORDER BY TestDB.dbo.Customers.CustomerID, PONumber

andare

Anche se i nomi di tabella qualificati non sono realmente necessari, sono tenuti durante l'accesso ai più database. Questo aiuta a mostrare perché gli alias sono spesso necessarie.

4 Creare una seconda query utilizzando alias di tabella come segue:

Selezionare cust.CustomerID, CompanyName, PONumber, ImportoVendita

Da Testdb.dbo.Customers come Cust sinistra outer join TestDB.dbo.Sales come vendita

su cust.CustomerID = sale.CustomerID

Dove cust.CustomerID Fra il 1000 e il 1999

ORDER BY cust.CustomerID, PONumber

andare

Si noti come molto più semplice appare la query. Aggiungendo le Per dismissione e le vendite nella clausola WHERE, ogni colonna qualificato va da un nome lungo qualificato come TestDB.dbo.Customers.CustomerID a cust.CustomerID. Gli alias di tabella abbreviare il testo della query e anche li rendono molto più facile da capire.

Consigli e avvertenze

  • In Microsoft SQL Server, è possibile anche colonne alias, ma non è possibile utilizzare i nomi di alias nella clausola WHERE.