Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> software >> Software Database >> .

Come utilizzare Selezionare in un'istruzione UPDATE

I progettisti di Structured Query Language ( SQL) creato uno strumento potente per gestire i dati con pochi semplici comandi . Uno dei più potenti costrutti si verifica quando i comandi sono annidati . A Selezionare , UPDATE o DELETE comando utilizza uno o più ulteriori comandi di selezione per limitare il suo funzionamento . A titolo di esempio , un aggiornamento sulla tabella clienti si verifica solo quando le vendite totali aggregati da diversi record di vendita ammontano a più di $ 250. Seguire questa procedura per creare diversi comandi di aggiornamento nidificati. Cose che ti serviranno base di dati SQL come Oracle , Sybase , Microsoft SQL Server o MySQL
comprensione di base dei comandi SQL e editor di query
Mostra più istruzioni
1

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