HAVING-saten i Access anger vilka grupperade poster som visas av en SELECT-instruktion med en GROUP BY-sats. Efter att GROUP BY har kombinerat poster, visar HAVING de poster som grupperats av GROUP BY-satsen som uppfyller villkoren i HAVING-satsen.
Syntax
SELECT-fältlista
FROM-tabell
WHERE selectcriteria
GROUP BY groupfieldlist
[HAVING groupcriteria]
Ett SELECT-kommando som innehåller en HAVING-sats består av följande syntaktiska element:
| Element | Beskrivning |
|---|---|
| fältlista | Namnet på det eller de fält som ska hämtas tillsammans med eventuella fältnamnsalias, SQL-mängdfunktioner, urvalspredikat (ALL, DISTINCT, DISTINCTROW eller TOP) eller andra SELECT-alternativ. |
| tabell | Namnet på den tabell från vilken posterna ska hämtas. |
| urvalsvillkor | Urvalsvillkor. Om kommandot innehåller en WHERE-sats grupperar Microsoft Access-databasmotorn värden efter att WHERE-villkoret används på posterna. |
| gruppfältlista | Namnen på upp till 10 fält som används för att gruppera poster. Fältnamnens ordning i gruppfältlista anger grupperingsnivåerna, från den högsta till den lägsta nivån. |
| gruppvillkor | Ett uttryck som anger vilka grupperade poster som ska visas. |
Kommentarer
HAVING är valfritt.
HAVING fungerar på ungefär samma sätt som WHERE, som anger vilka poster som finns med i urvalet. När posterna grupperats med GROUP BY, används HAVING för att avgöra vilka poster som ska visas:
SELECT CategoryID,
Sum(UnitsInStock)
FROM Products
GROUP BY CategoryID
HAVING Sum(UnitsInStock) > 100 And Like "BOS*";
En HAVING-sats kan innehålla upp till 40 uttryck som kombineras med logiska operatorer, t.ex. And och Or.