Linguaggio SQL per Access: clausola SELECT

Si applica a
Access per Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Questo articolo fa parte di una serie relativa a SQL per Access. Spiega come scrivere una SELECT clausola e mostra esempi di tecniche che puoi usare.

Per una panoramica del linguaggio SQL per Access, vedere l'articolo Linguaggio SQL per Access: nozioni fondamentali, terminologia e sintassi.

In questo articolo

Selezionare campi: la clausola SELECT

Un'istruzione SELECT di solito inizia con una SELECT clausola. Usare la clausola per specificare i campi che contengono i dati desiderati in una query. È inoltre possibile usare le espressioni al posto o in aggiunta ai campi. È anche possibile usare un'altra SELECT istruzione come campo. Questa è denominata sottoquery.

Si supponga di voler conoscere i numeri di telefono dei clienti. Se il campo in cui sono memorizzati tali numeri è denominato txtCustomerPhone, la clausola avrà questo SELECT aspetto:

SELECT [txtCustomerPhone]

È possibile usare le parentesi quadre per racchiudere il nome. Se il nome non contiene spazi o caratteri speciali, le parentesi quadre sono facoltative. Se sì, devi usarli.

Suggerimento

Un nome con gli spazi è più facile da leggere e consente di risparmiare tempo quando si progettano moduli e report, tuttavia può richiedere una maggiore digitazione quando si scrivono istruzioni SQL. Tenere presente questa considerazione quando si assegna un nome agli oggetti nel database di Access.

Se l'istruzione SQL contiene due o più campi con lo stesso nome, aggiungere il nome dell'origine SELECT dati di ogni campo nella clausola. Utilizzare lo stesso nome dell'origine FROM dati utilizzato nella clausola.

Selezionare tutti i campi

Se si desidera includere tutti i campi di un'origine dati, è possibile elencarli singolarmente nella clausola o utilizzare l'asterisco SELECT (*). Quando si usa l'asterisco, Access determina i campi contenuti nell'origine dati durante l'esecuzione della query e li include tutti. In questo modo la query viene aggiornata quando vengono aggiunti nuovi campi all'origine dati.

È possibile usare l'asterisco con una o più origini dati in un'istruzione SQL. Se si usa l'asterisco con più origini dati, includere il nome dell'origine dati con l'asterisco in modo che Access possa determinare quale origine usare.

Si supponga, ad esempio, di voler selezionare tutti i campi della Orders tabella, ma solo l'indirizzo di posta elettronica della Contacts tabella. La tua SELECT clausola potrebbe essere simile a questa:

SELECT Orders.*, Contacts.[E-mail Address]

Nota

Tenere traccia del momento in cui si usa l'asterisco. Se in seguito qualcuno aggiunge nuovi campi all'origine dati e non sono stati pianificati, i risultati della query potrebbero non essere quelli desiderati.

Selezionare valori distinti

Se si sa che l'istruzione restituirà dati duplicati e si desidera visualizzare solo valori distinti, utilizzare la DISTINCT parola chiave nella SELECT clausola. Ad esempio, se alcuni interessi dei clienti utilizzano lo stesso numero di telefono, DISTINCT assicurarsi di visualizzare ogni numero di telefono una sola volta:

SELECT DISTINCT [txtCustomerPhone]

Usare nomi sostitutivi per campi o espressioni: la parola chiave AS

È possibile modificare l'etichetta visualizzata per qualsiasi campo in visualizzazione Foglio dati utilizzando la AS parola chiave e un alias di campo nella SELECT clausola. Un alias di campo è un nome assegnato a un campo in una query per rendere più leggibili i risultati. Ad esempio, se si desidera selezionare dati da un campo denominato txtCustPhone, è possibile semplificare la lettura dei risultati utilizzando un alias di campo:

SELECT [txtCustPhone] AS [Customer Phone]

Nota

Quando si utilizza un'espressione in una SELECT clausola, è necessario utilizzare un alias di campo.

Selezionare usando un'espressione

A volte è necessario esaminare i calcoli in base ai dati o restituire solo una parte del valore di un campo. Si supponga, ad esempio, di voler restituire l'anno di nascita dei clienti in base ai dati nel BirthDate campo. La tua SELECT clausola potrebbe essere simile a questa:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

In questa espressione viene usata la funzione DatePart e due argomenti: "yyyy" (una costante) e [BirthDate] (un identificatore).

È possibile usare qualsiasi espressione valida come campo se restituisce un singolo valore per un singolo valore di input.

Inizio pagina