HAR klausul kan du angi forhold som filter som gruppe resultatene vises i de endelige resultatene
WHERE-leddet steder forholdene på de valgte kolonnene, mens HAVING steder forholdene på grupper. opprettet av GROUP BY-leddet
Syntax.
Følgende er posisjonen til HAR klausul i en SELECT spørring:
SELECTFROMWHEREGROUP BYHAVINGORDER BY
HAR klausul må følge GROUP BY-leddet i en spørring, og må også forut ORDER BY-leddet hvis det brukes. Det følgende er syntaksen til SELECT-setning, inkludert HAR klausul:
Velg COLUMN1, column2FROM table1, table2WHERE [vilkår] GROUP BY COLUMN1, column2HAVING [vilkår] ORDER BY COLUMN1, COLUMN2
Eksempel:
< p> Tenk COMPANY bordet er å ha følgende poster:
ID Navn Alder ADRESSE LØNN ---------- ---------- ---------- - --------- ---------- 1 Paul 32 California 20000,02 Allen 25 Texas 15000,03 Teddy 23 Norge 20000,04 Mark 25 Rich-Mond 65000,05 David 27 Texas 85000,06 Kim 22 Sør-Hall 45000,07 James 24 Houston 10000,08 Paul 24 Houston 20000,09 James 44 Norge 5000,010 James 45 Texas 5000,0
Følgende er et eksempel, som vil vise rekord for hvilket navn som teller er mindre enn 2:
sqlite > SELECT * FROM COMPANY GROUP BY navn HAR count (navn) < 2;
Dette vil gi følgende resultat:
ID Navn Alder ADRESSE LØNN ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 150005 David 27 Texas 850006 Kim 22 Sør-Hall 450004 Mark 25 Rich-Mond 650003 Teddy 23 Norge 20 000
Etter er eksempelet, som vil vise rekord for hvilket navn som teller er større enn 2:
sqlite > SELECT * FROM COMPANY GROUP BY navn HAR count (navn) > 2;
Dette vil gi følgende resultat:
ID Navn Alder ADRESSE LØNN ---------- ---------- ---------- ---------- ---------- 10 James 45 Texas 5000