SlideShare a Scribd company logo
1 of 3
Download to read offline
Classificazione delle interrogazioni complesse                                                Esempio : gestione ordini
                                                                                   `       Query con ordinamento                                                                 cliente          COD-CLI NOME          INDIRIZZO P-IVA
                                                                                   `       Query con aggregazioni
                                                                                   `       Query con raggruppamento
                                                                                               y        gg pp
                                                                                   `       Query binarie                                                                         ordine           COD-ORD COD-CLI DATA IMPORTO
                                                                                   `       Query nidificate

                                             Basi di Dati
                                                                                                                                                                                 dettaglio COD-ORD COD-PROD QTA

                          Interrogazioni complesse (I parte)
                                                                                                                                                                                 prodotto         COD-PROD NOME PREZZO

                                                                                                                               Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)
                                                                                       3                                                                                             4




Istanza di ordine                                                                  Query con ordinamento                                                                         Order by
                                                                                   SELECT * FROM ORDINE                                                                          SELECT * FROM ORDINE
     ordine
                                                                                   WHERE IMPORTO < 100.000                                                                       WHERE IMPORTO < 100.000
                                              IMPORTO
     COD-ORD COD-CLI DATA
                                                                                   ORDER BY DATA                                                                                 ORDER BY COD CLI
     1                                              50.000
                                                    50 000
                3        2004-06-01
                         2004 06 01
                                                                                                                                              IMPORTO
                                                                                               COD-ORD COD-CLI DATA                                                                                                                     IMPORTO
                                                                                                                                                                                             COD-ORD COD-CLI DATA
     2                                                 8.000
                4        2004-08-03
                                                                                                                                                     50.000
                                                                                                                                                     50 000
                                                                                               1           3         2004-06-01
                                                                                                                     2004 06 01                                                                                                               12.000
                                                                                                                                                                                                                                              12 000
                                                                                                                                                                                             4           1            2004-07-01
                                                                                                                                                                                                                      2004 07 01
     3                                                 5.500
                3        2004-09-01
                                                                                                                                                     12.000
                                                                                               4           1         2004-07-01                                                                                                                  1.500
                                                                                                                                                                                             5           1            2004-08-01
     4                                              12.000
                1        2004-07-01
                                                                                                                                                       1.500
                                                                                               5           1         2004-08-01                                                                                                               50.000
                                                                                                                                                                                             1           3            2004-06-01
     5                                                 1.500
                1        2004-08-01
                                                                                                                                                       8.000
                                                                                               2           4         2004-08-03                                                                                                                  5.500
                                                                                                                                                                                             6           3            2004-09-03
     6                                              27.000
                                                    27 000
                3        2004-09-03
                         2004 09 03
                                                                                                                                                       5.500
                                                                                               3           3         2004-09-01                                                                                                               27.000
                                                                                                                                                                                             3           3            2004-09-01
                                                                                                                                                     27.000
                                                                                                                                                     27 000
                                                                                               6           3         2004-09-03
                                                                                                                     2004 09 03                                                                                                                  8.000
                                                                                                                                                                                                                                                 8 000
                                                                                                                                                                                             2           4            2004-08-03
                                                                                                                                                                                                                      2004 08 03
                                 Basi Di Dati Interrogazioni complesse (I parte)                                               Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)
 5                                                                                     6                                                                                             7




Order by                                                                           Query aggregate                                                                               Query con massimo
                                                                                   `                                                                                             `
.......                                                                                    Utilizzano le funzioni aggregate:                                                             Selezionare l’importo massimo degli ordini.
                                                                                           `   SUM     sommatoria
ORDER BY COD CLI ASC, DATA DESC
                                                                                           `   AVG     media                                                                     SELECT MAX(IMPORTO) AS MAX IMP
                                                                                                                                                                                           (       )
                                                   IMPORTO
      COD-ORD CO C DATA
      CO O    COD-CLI                                                                      `   MIN      minimo
                                                                                                                                                                                 FROM ORDINE
                                                                                           `   MAX      massimo
                                                            1.500
      5         1         2004-08-01
                                                                                           `   COUNT   cardinalità
                                                          12.000
      4         1         2004-07-01
                                                                                                                                                                                                         MAX-IMP
                                                          27.000
      6         3         2004 09 03
                          2004-09-03
                                                                                   `       I NULL sono esclusi
                                                            5.500
      3         3         2004-09-01                                                                                                                                                                         50.000
                                                          50.000
                                                          50 000
      1         3         2004-06-01
                          2004 06 01
                                                            8.000
      2         4         2004-08-03

                                 Basi Di Dati Interrogazioni complesse (I parte)                                               Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)
 8                                                                                     9                                                                                             10
Query con sommatoria                                                                     Query con raggruppamento                                                                   Query con raggruppamento
`                                                                                        `                                                                                          `
     Selezionare la somma degli importi degli ordini relativi al                              si aggiungono le clausole:                                                                 Attenzione!
     cliente numero 1.                                                                        `   GROUP BY (raggruppamento)                                                         `    Utilizzando GROUP BY il risultato della SELECT è ununico
                                                                                              `   HAVING (selezione dei gruppi)                                                          record per ciascun gruppo.
                                                                                                                                                                                    `
SELECT SUM(IMPORTO) AS SOMMA IMP                                                                                                                                                         Pertanto in SELECT (e in HAVING) possono comparire
                                                                                                                                                                                         solo:
                                                                                                              SELECT …..
FROM ORDINE
                                                                                                                                                                                         `   Uno o più attributi del raggruppamento (i campi specificati
                                                                                                              FROM …..
WHERE COD CLIENTE = 1
                                                                                                                                                                                             nella GROUP BY)
                                                                                                              WHERE …..
                                                                                                                                                                                         `   Funzioni aggregate: tali funzioni vengono valutate, e quindi
                                                                                                              GROUPBY …..                                                                    forniscono un valore unico, per ciascun gruppo
                      SOMMA-IMP
                                                                                                              HAVING …..
                      13.500

                                       Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)                                               Basi Di Dati Interrogazioni complesse (I parte)
    11                                                                                       12                                                                                         13




Query con raggruppamento                                                                 Passo 1: Valutazione WHERE                                                                 Passo 2 : Raggruppamento
`                                                                                                                                                                                   `
     Selezionare la somma degli importi degli ordini successivi                                                                                                                          si valuta la clausola GROUP BY
     al 10 6 04 per quei clienti che hanno emesso almeno 2                                                                                     IMPORTO
                                                                                                  COD-ORD COD-CLI DATA
     ordini.                                                                                                                                                                                 COD-ORD COD-CLI DATA                               IMPORTO
                                                                                                                                                        8.000
                                                                                                  2             4           2004 08 03
                                                                                                                            2004-08-03
                                                                                                                                                                                             4             1           2004-07-01                      12.000
                                                                                                                                                        5.500
                                                                                                  3             3           2004-09-01
                SELECT COD CLI, SUM (IMPORTO)                                                                                                                                                5             1           2004 08 01
                                                                                                                                                                                                                       2004-08-01                        1.500
                                                                                                                                                                                                                                                         1 500
                                                                                                                                                     12.000
                                                                                                                                                     12 000
                                                                                                  4             1           2004-07-01
                                                                                                                            2004 07 01
                FROM ORDINE
                                                                                                                                                                                             3             3           2004-09-01                        5.500
                                                                                                                                                        1.500
                                                                                                  5             1           2004-08-01
                WHERE DATA > 2004 06 10
                                                                                                                                                                                             6             3           2004-09-03
                                                                                                                                                                                                                       2004 09 03                      27.000
                                                                                                                                                     27.000
                                                                                                  6             3           2004-09-03
                GROUP BY COD CLI
                                                                                                                                                                                             2             4           2004-08-03                        8.000
                HAVING COUNT (IMPORTO) >= 2
                                                                                                          (WHERE DATA > 2004-06-10)
                                                                                                                                                                                                       (GROUP BYCOD-CLI)

                                       Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)                                               Basi Di Dati Interrogazioni complesse (I parte)
    14                                                                                       15                                                                                         16




Passo 3 : Calcolo degli aggregati                                                        Passo 4 : Estrazione dei gruppi                                                            Passo 5 : Produzione del risultato
`                                                                                        `
     si calcolano SUM (IMPORTO) e COUNT(IMPORTO) per                                          si valuta il predicato COUNT (IMPORTO) >=2
     ciascun gruppo
                                                                                                                                                                                                          COD-CLI         SUM
                                                                                                                                                                                                                          (IMPORTO)
                                                                                                      COD-CLI                       COUNT
                                                                                                                    SUM
                                                                                                                                                                                                          1               13.500
                                                                                                                                    (IMPORTO)
                                                                                                                    (IMPORTO)
          COD-CLI                         COUNT
                         SUM
                                          (IMPORTO)
                         (IMPORTO)                                                                                                                                                                        3
                                                                                                      1                             2                                                                                     32.500
                                                                                                                                                                                                                          32 500
                                                                                                                    13.500
                                                                                                                    13 500
          1                               2
                         13.500                                                                       3                             2
                                                                                                                    32.500
          3                               2
                         32.500
                         32 500                                                                       4                             1
                                                                                                                    8.000
          4                               1
                         8.000




                                       Basi Di Dati Interrogazioni complesse (I parte)                                            Basi Di Dati Interrogazioni complesse (I parte)                                               Basi Di Dati Interrogazioni complesse (I parte)
    17                                                                                       18                                                                                         19
Doppio raggruppamento                                                                     Situazione dopo il join e il raggruppamento                                               Estrazione del risultato
                                                                                                   ordine                dettaglio
`                                                                                                                                                                                   `
     Selezionare la somma delle quantità dei dettagli degli                                                                                                                              si valuta la funzione aggregata SUM(QTA) e il predicato
     ordini emessi da ciascun cliente per ciascun prodotto,                                                                                                                              HAVING
                                                                                          COD-CLI ORDINE. DETTAGLIO. COD-PROD QTA
     purché la somma superi 50.                                                                   COD-ORD COD-ORD
                                                                                          1       3       3          1         30
                                                                                                                                                                                                COD-CLI    COD-PROD          SUM(QTA)
                                                                                                                                                                 gruppo 1,1
              SELECT COD CLI, COD PROD, SUM(QTA)                                          1           4          4            1                         20
              FROM ORDINE AS O, DETTAGLIO AS D                                            1           3          3            2                                                                 1          1                 50
                                                                                                                                                        30
                                                                                                                                                                 gruppo 1,2
              WHERE O.COD ORD = D.COD ORD                                                 1           5          5            2                         10                                      1          2                 40
                                                                                                                                                                 gruppo 2,1
              GROUP BY COD CLI, COD PROD                                                  2           3          3            1                         60                                      2          1                 60
              HAVING SUM(QTA) > 50                                                        3           1          1            1                         40                                      3          1                 95
                                                                                          3           2          2            1                                  gruppo 3,1
                                                                                                                                                        30
                                                                                          3           6          6            1                         25
                                        Basi Di Dati Interrogazioni complesse (I parte)                                           Basi Di Dati Interrogazioni complesse (I parte)                                         Basi Di Dati Interrogazioni complesse (I parte)
    20                                                                                        21                                                                                        22




Query con raggruppamento e ordinamento                                                    Raggruppamento e ordinamento                                                              ESERCIZI SUL GROUP BY
`                                                                                         `
     E’ possibile ordinare il risultato delle query con                                        Selezionare la somma degli importi degli ordini successivi                           SELECT ARTICOLO
     raggruppamento                                                                            al 10/6/04 per quei clienti che hanno emesso almeno 2                                FROM VENDITE GROUP BY ARTICOLO
                                                                                               ordini dopo quella data, in ordine di cliente.                                       HAVING COUNT(DISTINCT DATA)>1
                                                                                                                                                                                                  (           )
                 SELECT …..
                                                                                                                                                                                             ARTICOLO          DATA                NUM
                                                                                                          SELECT COD CLI, SUM (IMPORTO)
                 FROM …..
                                                                                                          FROM ORDINE
                 [ WHERE ….. ]                                                                                                                                                                PENNA       2004-12-13                   2
                                                                                                          WHERE DATA > 2004 06 10
                 GROUP BY …..                                                                                                                                                                 MATITA      2004-12-08
                                                                                                                                                                                                          2004 12 08                   1
                                                                                                          GROUP BY COD CLI
                 [ HAVING ….. ]
                                                                                                                                                                                              GOMMA       2004-12-10                   1
                                                                                                          HAVING COUNT (IMPORTO) >= 2
                 ORDER BY ….
                                                                                                                                                                                              MATITA      2004-12-08                   2
                                                                                                          ORDER BY COD CLI
                                                                                                                                                                                              PENNA       2004 12 08
                                                                                                                                                                                                          2004-12-08                   1
                                        Basi Di Dati Interrogazioni complesse (I parte)                                           Basi Di Dati Interrogazioni complesse (I parte)                                         Basi Di Dati Interrogazioni complesse (I parte)
    23                                                                                        24                                                                                        25




ESERCIZI SUL GROUP BY
`    GROUP BY ARTICOLO
         ARTICOLO        DATA
           PENNA         2004-12-13,
                         2004-12-13 2004-12-08
           MATITA        2004-12-08, 2004-12-08
           GOMMA         2004-12-10
                         2004 12 10

`    HAVING COUNT(DISTINCT DATA)>1

         ARTICOLO
           PENNA


                                        Basi Di Dati Interrogazioni complesse (I parte)
    26

More Related Content

Viewers also liked

Viewers also liked (9)

Calc Num Zanni 02
Calc Num Zanni 02Calc Num Zanni 02
Calc Num Zanni 02
 
Basi Dati C1
Basi Dati C1Basi Dati C1
Basi Dati C1
 
Basi Dati A1
Basi Dati A1Basi Dati A1
Basi Dati A1
 
Branch And Network Partner
Branch And Network PartnerBranch And Network Partner
Branch And Network Partner
 
Calc Num Prato 03
Calc Num Prato 03Calc Num Prato 03
Calc Num Prato 03
 
Lessons From The Life Of A.R.Rahman
Lessons From The Life Of A.R.RahmanLessons From The Life Of A.R.Rahman
Lessons From The Life Of A.R.Rahman
 
PUMPS+-
PUMPS+-PUMPS+-
PUMPS+-
 
Aviation disasters due to mechanical failures
Aviation disasters due to mechanical failuresAviation disasters due to mechanical failures
Aviation disasters due to mechanical failures
 
Ship Rudders
Ship RuddersShip Rudders
Ship Rudders
 

More from Bombers Falcoman (20)

Calc Num Prato 04
Calc Num Prato 04Calc Num Prato 04
Calc Num Prato 04
 
Calc Num Prato 02
Calc Num Prato 02Calc Num Prato 02
Calc Num Prato 02
 
Calc Num Prato 01(21.05.09)
Calc Num Prato 01(21.05.09)Calc Num Prato 01(21.05.09)
Calc Num Prato 01(21.05.09)
 
Calc Num Es 13.05.09
Calc Num Es 13.05.09Calc Num Es 13.05.09
Calc Num Es 13.05.09
 
Basi Dati F1 Es
Basi Dati F1 EsBasi Dati F1 Es
Basi Dati F1 Es
 
Basi Dati F1 Bis
Basi Dati F1 BisBasi Dati F1 Bis
Basi Dati F1 Bis
 
Basi Dati E6
Basi Dati E6Basi Dati E6
Basi Dati E6
 
Basi Dati E5
Basi Dati E5Basi Dati E5
Basi Dati E5
 
Basi Dati E3
Basi Dati E3Basi Dati E3
Basi Dati E3
 
Basi Dati E1
Basi Dati E1Basi Dati E1
Basi Dati E1
 
Basi Dati F1
Basi Dati F1Basi Dati F1
Basi Dati F1
 
Basi Dati E2
Basi Dati E2Basi Dati E2
Basi Dati E2
 
Basi Dati E4
Basi Dati E4Basi Dati E4
Basi Dati E4
 
Basi Dati C Riepilogo
Basi Dati C RiepilogoBasi Dati C Riepilogo
Basi Dati C Riepilogo
 
Basi Dati C5 Es
Basi Dati C5 EsBasi Dati C5 Es
Basi Dati C5 Es
 
Basi Dati C6
Basi Dati C6Basi Dati C6
Basi Dati C6
 
Basi Dati C6 Es
Basi Dati C6 EsBasi Dati C6 Es
Basi Dati C6 Es
 
Basi Dati d4
Basi Dati d4Basi Dati d4
Basi Dati d4
 
Basi Dati d3
Basi Dati d3Basi Dati d3
Basi Dati d3
 
Basi Dati d2
Basi Dati d2Basi Dati d2
Basi Dati d2
 

Basi Dati C5

  • 1. Classificazione delle interrogazioni complesse Esempio : gestione ordini ` Query con ordinamento cliente COD-CLI NOME INDIRIZZO P-IVA ` Query con aggregazioni ` Query con raggruppamento y gg pp ` Query binarie ordine COD-ORD COD-CLI DATA IMPORTO ` Query nidificate Basi di Dati dettaglio COD-ORD COD-PROD QTA Interrogazioni complesse (I parte) prodotto COD-PROD NOME PREZZO Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 3 4 Istanza di ordine Query con ordinamento Order by SELECT * FROM ORDINE SELECT * FROM ORDINE ordine WHERE IMPORTO < 100.000 WHERE IMPORTO < 100.000 IMPORTO COD-ORD COD-CLI DATA ORDER BY DATA ORDER BY COD CLI 1 50.000 50 000 3 2004-06-01 2004 06 01 IMPORTO COD-ORD COD-CLI DATA IMPORTO COD-ORD COD-CLI DATA 2 8.000 4 2004-08-03 50.000 50 000 1 3 2004-06-01 2004 06 01 12.000 12 000 4 1 2004-07-01 2004 07 01 3 5.500 3 2004-09-01 12.000 4 1 2004-07-01 1.500 5 1 2004-08-01 4 12.000 1 2004-07-01 1.500 5 1 2004-08-01 50.000 1 3 2004-06-01 5 1.500 1 2004-08-01 8.000 2 4 2004-08-03 5.500 6 3 2004-09-03 6 27.000 27 000 3 2004-09-03 2004 09 03 5.500 3 3 2004-09-01 27.000 3 3 2004-09-01 27.000 27 000 6 3 2004-09-03 2004 09 03 8.000 8 000 2 4 2004-08-03 2004 08 03 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 5 6 7 Order by Query aggregate Query con massimo ` ` ....... Utilizzano le funzioni aggregate: Selezionare l’importo massimo degli ordini. ` SUM sommatoria ORDER BY COD CLI ASC, DATA DESC ` AVG media SELECT MAX(IMPORTO) AS MAX IMP ( ) IMPORTO COD-ORD CO C DATA CO O COD-CLI ` MIN minimo FROM ORDINE ` MAX massimo 1.500 5 1 2004-08-01 ` COUNT cardinalità 12.000 4 1 2004-07-01 MAX-IMP 27.000 6 3 2004 09 03 2004-09-03 ` I NULL sono esclusi 5.500 3 3 2004-09-01 50.000 50.000 50 000 1 3 2004-06-01 2004 06 01 8.000 2 4 2004-08-03 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 8 9 10
  • 2. Query con sommatoria Query con raggruppamento Query con raggruppamento ` ` ` Selezionare la somma degli importi degli ordini relativi al si aggiungono le clausole: Attenzione! cliente numero 1. ` GROUP BY (raggruppamento) ` Utilizzando GROUP BY il risultato della SELECT è ununico ` HAVING (selezione dei gruppi) record per ciascun gruppo. ` SELECT SUM(IMPORTO) AS SOMMA IMP Pertanto in SELECT (e in HAVING) possono comparire solo: SELECT ….. FROM ORDINE ` Uno o più attributi del raggruppamento (i campi specificati FROM ….. WHERE COD CLIENTE = 1 nella GROUP BY) WHERE ….. ` Funzioni aggregate: tali funzioni vengono valutate, e quindi GROUPBY ….. forniscono un valore unico, per ciascun gruppo SOMMA-IMP HAVING ….. 13.500 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 11 12 13 Query con raggruppamento Passo 1: Valutazione WHERE Passo 2 : Raggruppamento ` ` Selezionare la somma degli importi degli ordini successivi si valuta la clausola GROUP BY al 10 6 04 per quei clienti che hanno emesso almeno 2 IMPORTO COD-ORD COD-CLI DATA ordini. COD-ORD COD-CLI DATA IMPORTO 8.000 2 4 2004 08 03 2004-08-03 4 1 2004-07-01 12.000 5.500 3 3 2004-09-01 SELECT COD CLI, SUM (IMPORTO) 5 1 2004 08 01 2004-08-01 1.500 1 500 12.000 12 000 4 1 2004-07-01 2004 07 01 FROM ORDINE 3 3 2004-09-01 5.500 1.500 5 1 2004-08-01 WHERE DATA > 2004 06 10 6 3 2004-09-03 2004 09 03 27.000 27.000 6 3 2004-09-03 GROUP BY COD CLI 2 4 2004-08-03 8.000 HAVING COUNT (IMPORTO) >= 2 (WHERE DATA > 2004-06-10) (GROUP BYCOD-CLI) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 14 15 16 Passo 3 : Calcolo degli aggregati Passo 4 : Estrazione dei gruppi Passo 5 : Produzione del risultato ` ` si calcolano SUM (IMPORTO) e COUNT(IMPORTO) per si valuta il predicato COUNT (IMPORTO) >=2 ciascun gruppo COD-CLI SUM (IMPORTO) COD-CLI COUNT SUM 1 13.500 (IMPORTO) (IMPORTO) COD-CLI COUNT SUM (IMPORTO) (IMPORTO) 3 1 2 32.500 32 500 13.500 13 500 1 2 13.500 3 2 32.500 3 2 32.500 32 500 4 1 8.000 4 1 8.000 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 17 18 19
  • 3. Doppio raggruppamento Situazione dopo il join e il raggruppamento Estrazione del risultato ordine dettaglio ` ` Selezionare la somma delle quantità dei dettagli degli si valuta la funzione aggregata SUM(QTA) e il predicato ordini emessi da ciascun cliente per ciascun prodotto, HAVING COD-CLI ORDINE. DETTAGLIO. COD-PROD QTA purché la somma superi 50. COD-ORD COD-ORD 1 3 3 1 30 COD-CLI COD-PROD SUM(QTA) gruppo 1,1 SELECT COD CLI, COD PROD, SUM(QTA) 1 4 4 1 20 FROM ORDINE AS O, DETTAGLIO AS D 1 3 3 2 1 1 50 30 gruppo 1,2 WHERE O.COD ORD = D.COD ORD 1 5 5 2 10 1 2 40 gruppo 2,1 GROUP BY COD CLI, COD PROD 2 3 3 1 60 2 1 60 HAVING SUM(QTA) > 50 3 1 1 1 40 3 1 95 3 2 2 1 gruppo 3,1 30 3 6 6 1 25 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 20 21 22 Query con raggruppamento e ordinamento Raggruppamento e ordinamento ESERCIZI SUL GROUP BY ` ` E’ possibile ordinare il risultato delle query con Selezionare la somma degli importi degli ordini successivi SELECT ARTICOLO raggruppamento al 10/6/04 per quei clienti che hanno emesso almeno 2 FROM VENDITE GROUP BY ARTICOLO ordini dopo quella data, in ordine di cliente. HAVING COUNT(DISTINCT DATA)>1 ( ) SELECT ….. ARTICOLO DATA NUM SELECT COD CLI, SUM (IMPORTO) FROM ….. FROM ORDINE [ WHERE ….. ] PENNA 2004-12-13 2 WHERE DATA > 2004 06 10 GROUP BY ….. MATITA 2004-12-08 2004 12 08 1 GROUP BY COD CLI [ HAVING ….. ] GOMMA 2004-12-10 1 HAVING COUNT (IMPORTO) >= 2 ORDER BY …. MATITA 2004-12-08 2 ORDER BY COD CLI PENNA 2004 12 08 2004-12-08 1 Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) Basi Di Dati Interrogazioni complesse (I parte) 23 24 25 ESERCIZI SUL GROUP BY ` GROUP BY ARTICOLO ARTICOLO DATA PENNA 2004-12-13, 2004-12-13 2004-12-08 MATITA 2004-12-08, 2004-12-08 GOMMA 2004-12-10 2004 12 10 ` HAVING COUNT(DISTINCT DATA)>1 ARTICOLO PENNA Basi Di Dati Interrogazioni complesse (I parte) 26