FROM-sats

FROM-satsen visar att tabellerna ska användas i SELECT-satsen. Formatet är:

Kopiera
FROM tabellnamn [tabellalias] [, tabellnamn [tabellalias]]

tabellnamn är namnet på en tabell i den aktuella databasen. Tabellnamnet måste börja med ett alfabetiskt tecken. Om tabellnamnet börjar med något annat än ett alfabetiskt tecken eller innehåller en punkt (.) ska du omge det med dubbla citattecken (citatomsluten identifierare).

tabellalias kan användas för att ge tabellen ett mer beskrivande namn, förkorta ett längre tabellnamn eller infoga samma tabell i frågan fler än en gång (till exempel i självkopplingar).

Fältnamn börjar med ett alfabetiskt tecken. Om fältnamnet börjar med något annat än ett alfabetiskt tecken eller innehåller en punkt (.) ska du omge det med dubbla citattecken (citatomsluten identifierare).

Exempel

ExecuteSQL-satsen för fältet som heter _EFTERNAMN är:

Kopiera
SELECT "_EFTERNAMN" from anst

Fältnamn kan föregås av tabellnamnet eller tabellalias.

Exempel

Med specifikationen FROM anställd A kan du t.ex. hänvisa till fältet EFTERNAMN som A.EFTERNAMN. Tabellalias måste användas om SELECT-satsen kopplar en tabell till sig själv.

Kopiera
SELECT * FROM anställd A, anställd F WHERE A.chefs_id = F.anställnings_id

Likhetstecknet (=) tar bara med matchande rader i resultatet.

Om du kopplar mer än en tabell och du vill radera alla rader som inte har motsvarande rader i båda källtabellerna, kan du använda INNER JOIN.

Exempel

Kopiera
SELECT *
   FROM Säljare INNER JOIN Säljdata
   ON Säljare.Försäljar_ID = Säljdata.Försäljar_ID

Om du kopplar två tabeller men inte vill radera raderna i den första tabellen (den vänstra tabellen) kan du använda LEFT OUTER JOIN.

Exempel

Kopiera
SELECT * 
   FROM Säljare LEFT OUTER JOIN Säljdata 
   ON Säljare.Försäljar_ID = Säljdata.Försäljar_ID

Alla rader från tabellen "Säljare" visas i den kopplade tabellen.

Kommentarer 

  • RIGHT OUTER JOIN stöds för närvarande inte.

  • FULL OUTER JOIN stöds för närvarande inte.