Come fare un Sottoseleziona query in Access

December 29

In tutte le applicazioni di database che utilizza Structured Query Language (SQL) per creare query, la query "Select" è il cavallo di battaglia. Tutto da vista semplice al complesso raggiunge e calcoli vengono effettuati tramite variazioni sul query di selezione. Il sub-select o sub-query è semplicemente una dichiarazione prescelta annidata all'interno di un'altra query di selezione. Il modo più semplice per costruire e capire una query sub-select è quello di costruire ed eseguire entrambe le parti della query singolarmente per assicurarsi di avere i risultati desiderati e poi combinarle in una query sub-select. Questo esempio costruire una query per mostrare che i clienti non hanno comprato nulla in più di 90 giorni.

istruzione

1 Creare una query per selezionare e mostrare tutti i clienti. Per creare qualsiasi query in Access, cliccare su "Offerte" sotto il menu Oggetto, quindi fare clic su "Design" o "Nuovo" sulla barra dei menu. Quando si apre la finestra di query, fare clic su "Visualizza" e poi "SQL View" per aprire una finestra di testo per inserire la query. Digitare la query, quindi fare clic sul punto esclamativo rosso per eseguire la query.

La sintassi è la seguente:

"Selezionare Customers.ID, Customers.Company da clienti"

Questo visualizza tutti gli ID dei clienti e nomi di società nel database clienti.

2 Creare una query che mostra tutti gli ordini che sono stati messi negli ultimi 90 giorni. La sintassi per questa query è simile al seguente:

"Seleziona Orders.OrderID da Ordini dove Orders.CustomerID = Customers.CustomerID e Orders.OrderDate> Date () - 90)

Questa query mostrerà solo il campo "orderID" che ha un numero ID cliente validi in esso e una vendita negli ultimi 90 giorni.

3 Creare la query sub-select combinando queste due domande.

"Selezionare Customers.ID, Customers.Company da clienti, dove non esiste

(Selezionare Orders.OrderID

da ordini

dove Orders.CustomerID = Customers.CustomerID

and Orders.OrderDate > Date() - 90)

Questa interrogazione, in effetti, mostra tutto dalla prima query che non è nella seconda query. In altre parole, questo mostra tutti i clienti che non hanno acquistato nulla negli ultimi 90 giorni. La chiave per il sub-select è la clausola "dove non esiste".

Consigli e avvertenze

  • Indipendentemente dal tipo o dalla complessità della query che si sta tentando di costruire, sempre costruire e testare ogni parte separatamente. Questo renderà molto più facile il debugging.
  • Se si sta costruendo query o sub-query che sono distruttive, come la cancellazione o l'aggiornamento di query, testare sempre con una query di selezione prima così si è sicuri di cosa si sta chiedendo di cancellare o modificare.