Aprire l'editor di query SQL e creare un nuovo database chiamato SampleDB . Scegli questo database per la sessione di query
Crea database SampleDB ; .
Usa SampleDB ;
Questi esempi sono stati creati usando l'editor di query in Microsoft SQL Server 2008 Management Studio Express .
2
Creare due tabelle , clienti e vendite , e quindi aggiungere alcuni record di entrambe le tabelle utilizzando il seguente script .
creare clienti Tabella
( CustomerID int chiave primaria , Stati
Nome varchar ( 50 ) , Stati
Stato varchar ( 10) ) ;
Inserisci in clienti Valori ( 1 , ' John Smith ', ' Nuovo' ) ;
inserto
in clienti Valori ( 2 , ' Mary Jones ', ' Nuovo ');
Inserisci in clienti Valori ( 3 , ' Fred Adams ', ' Nuovo' ) ;
Crea tabella Vendite
( SalesID int chiave primaria , Stati
CustomerID int Referenze Clienti ,
Importo int);
inserto
in valori di vendita ( 1 , 1 , 500) ;
inserto
in valori di vendita ( 2 , 1 , 250) ;
inserto
in valori di vendita ( 3 , 3 , 50) ;
3
creare una query nidificate , combinando un aggiornamento con un'istruzione Select che imposta lo stato del cliente ad Active per quei clienti che hanno attività in tabella Vendite.
Aggiornamento
clienti
stato = ' Active'
dove IDCliente
( Selezionare CustomerID da vendita ) ;
Questa è una dichiarazione standard di aggiornamento SQL che imposta il campo Stato su attiva per una selezionata set di record nella tabella clienti . In una query nidificate , la clausola Where include uno o più istruzioni Select circondate da parentesi () . Ogni istruzione SELECT restituisce un elenco di valori che può essere paragonato a un campo nella tabella . In questo caso , solo i record dei clienti che hanno gli ID dei clienti trovati nella tabella vendite saranno aggiornati .
4
creare una seconda query nidificate utilizzando un'istruzione SELECT che aggrega i totali delle vendite .
Aggiornamento clienti
Imposta stato =
'Premium' , dove IDCliente
(Seleziona CustomerID da vendita
gruppo
da CustomerID
avere sum ( Importo ) > 250) ;
analizzando le query nidificate , iniziare con le istruzioni Select trovati nella clausola Where. In questo caso, la tabella delle vendite è aggregato da ID cliente ( Raggruppa per CustomerID ) al totale degli importi di vendita ( Sum ( Importo ) ) . Quelle con un fatturato totale superiore a $ 250 sono scelti solo . Questo elenco viene poi utilizzato per filtrare i record dei clienti vengono aggiornati (cliente 1) .
5
Creare una query più nidificato che seleziona i record dei clienti che non si trovano nella tabella Vendite.
Aggiornamento clienti
Imposta stato = 'Inattivo '
dove CustomerID Not In
(Seleziona CustomerID da vendita ) ;
Questa query seleziona prima un elenco di ID clienti trovati nella tabella Sales ( 1 e 3) e quindi aggiorna quelli che non si trovano nella lista ( cliente 2 ) .
software © www.354353.com