Den här artikeln är en del av en serie om Access SQL. Här förklaras hur du skriver en SELECT sats och exempel på tekniker som du kan använda.
En översikt över Access SQL ges i artikeln Access SQL: grundläggande begrepp, ordlista och syntax.
Artikelinnehåll
- Välja fält: SELECT-uttrycket
- Välja alla fält
- Välja distinkta värden
- Använda ersättningsnamn på fält och uttryck: nyckelordet AS
- Välja med hjälp av uttryck
Välja fält: SELECT-uttrycket
Ett SELECT uttryck inleds vanligtvis med en SELECT sats. Använd satsen för att ange de fält som innehåller de data som ska anges i en fråga. Du kan också använda uttryck i stället för, eller utöver, fält. Du kan även använda ett annat SELECT uttryck som ett fält. Det kallas för en underfråga.
Anta att du vill veta dina kunders telefonnummer. Om fältet som lagrar talen har namnet txtCustomerPhoneser satsen SELECT ut så här:
SELECT [txtCustomerPhone]
Du kan omge namnet med hakparenteser. Om namnet inte innehåller blanksteg eller specialtecken är hakparenteserna valfria. Om det gör det måste du använda dem.
Tips
Ett namn som innehåller blanksteg är lättare att läsa och kan spara tid när du utformar formulär och rapporter, men du kan behöva skriva mer när du skriver SQL-uttryck. Tänk på det här när du namnger objekt i Access-databasen.
Om SQL-uttrycket innehåller två eller flera fält med samma namn lägger du till namnet på datakällan för varje fält i satsen SELECT . Använd samma namn på datakällan som du använder i satsen FROM .
Välja alla fält
När du vill ta med alla fält från en datakälla kan du lista dem individuellt i satsen SELECT eller använda en asterisk (*). När du använder asterisken avgör Access vilka fält datakällan innehåller när frågan körs och inkluderar dem alla. Det här hjälper till att hålla frågan uppdaterad när nya fält läggs till i datakällan.
Du kan använda asterisken för en eller flera datakällor i ett SQL-uttryck. Om du använder asterisken med flera datakällor tar du med namnet på datakällan med asterisken så att Access kan avgöra vilken källa som ska användas.
Anta till exempel att du vill välja alla fält i Orders tabellen men endast e-postadressen från tabellen Contacts . Satsen SELECT kan se ut så här:
SELECT Orders.*, Contacts.[E-mail Address]
Obs
Håll reda på när du använder asterisken. Om någon senare lägger till nya fält i datakällan och du inte har planerat för dem, kanske du inte vill ha de frågeresultat du vill ha.
Välja distinkta värden
Om du vet att ditt uttryck kommer att returnera dubblettdata och du bara vill se distinkta värden använder du nyckelordet i SELECT satsenDISTINCT. Om vissa kundintressen till exempel använder samma telefonnummer DISTINCT ska du se till att du bara ser varje telefonnummer en gång:
SELECT DISTINCT [txtCustomerPhone]
Använda ersättningsnamn på fält och uttryck: nyckelordet AS
Du kan ändra vilken etikett som visas för ett fält i databladsvyn med hjälp AS av nyckelordet och ett fältalias i SELECT satsen. Ett fältalias är ett namn som du tilldelar till ett fält i en fråga så att resultatet blir lättare att. Om du till exempel vill välja data från ett fält med namnet txtCustPhonekan du göra resultatet lättare att läsa med hjälp av ett fältalias:
SELECT [txtCustPhone] AS [Customer Phone]
Obs
När du använder ett uttryck i en SELECT sats måste du använda ett fältalias.
Välja med hjälp av uttryck
Ibland vill du titta på beräkningar baserade på dina data eller returnera endast en del av fältets värde. Anta till exempel att du vill returnera vilket år kunderna är födda baserat på data i fältet BirthDate . Satsen SELECT kan se ut så här:
SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]
I det här uttrycket används funktionen DatumDel och två argument: "yyyy" (en konstant) och [BirthDate] (en identifierare).
Du kan använda valfritt giltigt uttryck som ett fält om det returnerar ett enstaka värde för ett enskilt indatavärde.