Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:SQL Server
Per limitare il numero di righe restituite da una SELECT query, è necessario creare condizioni di ricerca o criteri di filtro. In SQL le condizioni di ricerca vengono visualizzate nella WHERE clausola dell'istruzione o se si sta creando una query di aggregazione, nella HAVING clausola .
Nota
È anche possibile usare le condizioni di ricerca per indicare quali righe sono interessate da una query Update, Insert Results, Insert Values, Delete o Make Table.
Quando la query viene eseguita, il motore di database esamina e applica la condizione di ricerca a ogni riga nelle tabelle in cui si esegue la ricerca. Se la riga soddisfa la condizione, viene inclusa nella query. Ad esempio, una condizione di ricerca che troverebbe tutti i dipendenti in una determinata area potrebbe essere:
region = 'UK'
Per stabilire i criteri per includere una riga in un risultato, è possibile usare più condizioni di ricerca. Ad esempio, il criterio di ricerca seguente è costituito da due condizioni di ricerca. La query include una riga nel set di risultati solo se tale riga soddisfa entrambe le condizioni.
region = 'UK' AND product_line = 'Housewares'
È possibile combinare queste condizioni con AND o OR. Nell'esempio precedente viene ANDusato . Al contrario, il criterio seguente usa OR. Il set di risultati include qualsiasi riga che soddisfi una o entrambe le condizioni di ricerca:
region = 'UK' OR product_line = 'Housewares'
È anche possibile combinare le condizioni di ricerca in una singola colonna. Ad esempio, il criterio seguente combina due condizioni nella colonna region:
region = 'UK' OR region = 'US'
Per informazioni dettagliate sulla combinazione di condizioni di ricerca, vedere gli articoli seguenti:
- Convenzioni per la combinazione delle condizioni di ricerca nel riquadro Criteri (Visual Database Tools)
- Specificare più condizioni di ricerca per una colonna (Visual Database Tools)
- Specificare più condizioni di ricerca per più colonne (Visual Database Tools)
- Combinare le condizioni quando AND ha la precedenza (Visual Database Tools)
- Combinare condizioni quando OR ha la precedenza (Visual Database Tools)
Esempi
Ecco alcuni esempi di query che usano vari operatori e criteri di riga:
Letterale
Valore logico, numerico, numerico o logico. L'esempio seguente usa un valore letterale per trovare tutte le righe per i dipendenti nel Regno Unito:
WHERE region = 'UK'riferimento alla colonna
Confronta i valori in una colonna con i valori in un'altra. Nell'esempio seguente viene eseguita una ricerca in una tabella
productsper tutte le righe in cui il valore del costo di produzione è inferiore al costo di spedizione:WHERE prod_cost < ship_costFunzione
Riferimento a una funzione che il back-end del database può risolvere per calcolare un valore per la ricerca. La funzione può essere una funzione definita dal server di database o da una funzione definita dall'utente che restituisce un valore scalare. L'esempio seguente cerca gli ordini effettuati oggi (la funzione GETDATE( ) restituisce la data corrente:
WHERE order_date = GETDATE()NULLNell'esempio seguente viene eseguita una ricerca in unaauthorstabella per tutti gli autori con un nome nel file:WHERE au_fname IS NOT NULLCalcolo
Risultato di un calcolo che può includere valori letterali, riferimenti a colonne o altre espressioni. Nell'esempio seguente viene eseguita una ricerca in una tabella
productsper trovare tutte le righe in cui il prezzo di vendita al dettaglio è superiore al doppio del costo di produzione:WHERE sales_price > (prod_cost * 2)