Postgresql összesítő függvények

Varianciáját adja vissza expressziós értékeket a csoport

Az alábbiakban részletes leírások minden összesítő függvények, konkrét információkat a funkciók használatát, példákkal és a megengedett típusú bemeneti adatok. Az alábbi leírásban a a kifejezés bármilyen azonosító az eredmény meg, vagy bármilyen érvényes kifejezés, amely végrehajt egy műveletet ilyen azonosítóval.

Amikor meghívunk egy összesítő függvény átkerül egy összesített kifejezés vonatkozik bejegyzések által létrehozott SELECT. A struktúrájában, az aggregált kifejezések hasonlóak a hagyományos kifejezések SQL, de lehet kezdeni az ALL kulcsszó vagy külön-külön.

Ha meg a kulcsszót DISTINCT működnek egyetlen olyan csoport, egyedi értékeket az aggregátum kifejezéseket csoportok ismétlődő értékeket figyelmen kívül hagyja. Az ALL kulcsszó, mint a SELECT, csak egyértelműen jelzi az a tény, hogy az a kifejezés, hogy az összes csoport. 5,19 felsorolása példák különböző formáinak megnyilvánulásai aggregáció.

Listing 5.19. Használata aggregált kifejezések

booktown = # SELECT count (location) AS setjocations,

booktown- # count (ALL hely) AS all_set_locations,

booktown- # count (külön helyszínen) AS unique_locations,

booktown- # count (*) AS all_rows booktown- # egyénekből;

setjocations | all_set_locations | uniquejocations all_rows

Összességében kifejezések ez is egy speciális formája kimutatható az oszlop kimeneti 5,19 al l_rows tőzsdei adatokat. Ha a hívást át egy összesítő függvény egy csillag (*), ez azt jelenti, hogy a függvény a folyamat minden területen, beleértve a elhanyagolták mezők NULL értékeket. Mivel tárgyak asztalra egy rekordot tartalmaz, amely a területen található, egyenlő NULL, a gróf területén rekord 1 ocati az eltér a számlálás eredménye ugyanaz nulla szimbólum használatával *.

Bejegyzések, amelyek összességében kifejezés magában foglal egy NULL, nem dolgozza fel összesítő függvények (kivétel a count () függvényt.

AVG () függvény megkapja az aggregált kifejezés arra utal, hogy bármilyen eredmény a numerikus típus (szám, bigint, smallint valós vagy dupla pontosságú), vagy az intervallum típus.

A függvény az átlagos összes leírt kifejező adatokat. Visszatérési érték tárgya numerikus típusú expresszáltatására típusú egész szám vagy egy kétszeres pontosságú típusonként valós kifejezéseket. Más esetekben a visszatérési típusa megegyezik a típusú kifejezés.

booktown = # SELECT AVG (költség) AS average_cost,

booktown- # avg (kiskereskedelmi) AS Átlagos_ár,

booktown- # avg (lakossági - költség) AS average_profit

booktown- # raktárról:

average_cost | Átlagos_ár | average_prof1t

24,8235294118 | 30,0088235294 5,1852941176

X> oktown = # SELECT avg (költség)

AS average_cost, p.name kiadójaként

booktown- # raktárról REGISZTRÁCIÓ kiadásban HASZNÁLATA (ISBN))

booktown-l REGISZTRÁCIÓ kiadók, mint P (publisheMd)

booktown- # HASZNÁLATA (publisheMd)

booktown- # GROUP BY p.name;

26,5000000000 | Ace Books

19,0000000000 | Books of Wonder

26,5000000000 I Doubleday

18,0000000000 | Henry Holt Company. Inc.

23,0000000000 I gyerekek Press

23,0000000000 | mojo Press

20,0000000000 I Penguin

23,0000000000 Random House

26,0000000000 | Watson-Guptill Publications

countO függvény értékek számát, amelyre a kifejezés értéke nem nulla. Típusú kifejezés nem korlátozódik. Emlékeztetni kell arra, hogy a count () függvény számít csak érték kivételével NULL, így értékelhető eredmények kifejezést használta nem NULL számlálási rekordokat.

Ha a hívás count () át a * szimbólum, a funkció egyszerűen számít valamennyi nyilvántartás, beleértve azokat, amelyek NULL.

booktown = # SELECT countC *) FROM kiadásban;

booktown = # SELECT count (ISBN). p.name

booktown- # FROM kiadásban REGISZTRÁCIÓ kiadók AS p (publisheMd)

booktown- # HASZNÁLATA (publisheMd)

booktown- # GROUP BY p.name

booktown- # ORDER BY száma DESC;

3. | random House

1 | Books of Wonder

1 | Henry Holt Company. Inc.

1 | Kids lenyomhatja

1 | O'Reilly Associates

1 | Watson-Gupti11 Publications

max () függvény a maximális értéke a kifejezés a csoportban. kifejezés lehet az eredménye az érték minden numerikus vagy string típusú, és írja be a dátumot és az időt. A visszatérési típusa megegyezik a típusú kifejezés.

booktown = # SELECT max (költség), max (kiskereskedelmi) raktárról;

booktown = # SELECT max (kiskereskedelmi), p.name

booktown- # FROM (készletek NATURAL JOIN kiadás)

booktown- # REGISZTRÁCIÓ kiadók AS p (PUBLISHER_ID)

booktown- # HASZNÁLATA (publisherjd)

booktown- # GROUP BY p.name

booktown- # ORDER BY max DESC;

45.95 i Ace Books 36.95 Doubleday 32.95

Random House 28.95 HarperCollins

28.95 I Watson-Guptill Publications

24.95 | mojo Press

23.95 1 Henry Holt Company. Inc. 23.95

Gyerekek megnyomhatja 21.95 Books of Wonder

min () függvény a minimális értéke a kifejezés a csoportban. kifejezés lehet az eredménye az érték minden numerikus vagy string típusú, és írja be a dátumot és az időt. A visszatérési típusa megegyezik a típusú kifejezés.

booktown = # SELECT min (költség). min (kiskereskedelmi) raktárról;

booktown = # SELECT min (kiskereskedelmi), p.name

booktown- # FROM (készletek NATURAL JOIN kiadás)

booktown- # REGISZTRÁCIÓ kiadók AS p (publisheMd)

booktown- # HASZNÁLATA (publisheMd)

booktown-l GROUP BY p.name

booktown- # ORDER BY min ASC;

16.95 | random House

21.95 I Books of Wonder

23.95 | Henry Holt Company. Inc.

23.95 | Kids lenyomhatja

24.95 | mojo Press

28.95 I HarperCollins

28.95 | Watson-Guptill Publications

stddev On fogadó funkció expressziós leíró értékek bármely numerikus típusú (Numeri a, Bigi nt, smal 1 i nt, valós vagy doubl e preci si on), és szórását adja vissza a csoport. Az igazi kifejezések eredmény visszaadott érték típusa kétszeres pontosságú, és a többi fajta -TO érték típusú numerikus.

booktown = # SELECT stddev (kiskereskedelmi) raktárról;

booktown = # SELECT stddev (kiskereskedelmi), p.name

booktown- # FROM (készletek NATURAL JOIN kiadás)

booktown- # REGISZTRÁCIÓ publikált AS p ON (publisheMd = p.id)

booktown- # GROUP BY p.name

booktown- # ORDER BY DESC stddev

booktown- # LIMIT 4:

16.97 | Ace Books

16.97 | Roc 8,02 Random House

sum () függvény megkapja kifejezése leíró értékek numerikus típusú (numerikus, bigint, smallint, igazi, vagy kétszeres pontosságú), és visszaadja az értékek összege a csoportban. Mert kifejezése típusú egész eredményt ad vissza, mint érték típusú numerikus és kifejezéseket a típusú valós - mint érték típusú dupla pontosságú. Más esetekben a visszatérési típusa megegyezik a típusú kifejezés.

booktown = # SELECT sum (készlet) raktárról;

booktown = # SELECT sum (készlet). s.subject

booktown- # FROM ((készletek NATURAL JOIN kiadás)

booktown (# REGISZTRÁCIÓ könyvek (books.id = bookjd))

booktown-f REGISZTRÁCIÓ tárgyak AS s

booktown- # ON (books.subject_id = s.id)

booktown- # GROUP BY s.subject

booktown- # ORDER BY összeg DESC;

166 I Sci

91 | Gyermekkönyvek

variancia () függvény kap egy kifejezést leíró értékek numerikus típusú (numerikus, bigint, kis int, igazi, vagy kétszeres pontosságú), és visszaadja a szórás az együttes (stddevO négyzeten). Az igazi kifejezést eredményez visszaadott érték típusa kétszeres pontosságú, és a fennmaradó típusok - mint érték típusú numerikus.

booktown = # SELECT variancia (retaiT) raktárról;

booktown = # SELECT varianceCretail), p.name

booktown- # FROM (készletek NATURAL JOIN kiadás)

booktown- # REGISZTRÁCIÓ kiadók AS p

booktown- # ON (editions.pub! isher_id = p.id)

booktown- # GROUP BY p.name

booktown- # ORDER BY DESC variancia

booktown- # LIMIT 4: szórás neve

288.00 | Ace Books 288.00 I Roc 64,33.

Random House 32.00 | Doubleday

Kapcsolódó cikkek