Latest web development tutorials

SQLite Raggruppa

SQLite clausolaGROUP BY per l'uso con un'istruzione SELECT per raggruppare gli stessi dati.

Nel SELECT, GROUP BY nella clausola WHERE dopo, posto davanti la clausola ORDER BY.

grammatica

Quanto segue mostra il gruppo sintassi di base dalla clausola. GROUP BY deve essere posta dopo che le condizioni clausola WHERE, deve essere posto prima che la clausola ORDER BY.

Selezionare la colonna-list
FROM nome_tabella
Dove [condizioni]
GROUP BY column1, column2 .... columnn
ORDER BY column1, column2 .... columnn

È possibile utilizzare più colonne nella clausola GROUP BY. Assicurarsi di utilizzare le colonne di raggruppamento nell'elenco di colonne.

Esempi

tavolo COMPANY Supponiamo che ha i seguenti documenti:

NOME ID Età Indirizzo STIPENDIO
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norvegia 20000.0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Sud-Hall 45.000,0
7 James 24 Houston 10000.0

Se si vuole conoscere la massa salariale totale di ogni cliente, è possibile utilizzare la query GROUP BY come segue:

sqlite> SELECT NOME, SUM (STIPENDIO) dal gruppo di azienda per nome;

Questo produce i seguenti risultati:

NOME SUM (STIP)
---------- -----------
Allen 15000.0
David 85.000,0
James 10000.0
Kim 45.000,0
Mark 65.000,0
Paul 20000.0
Teddy 20000.0

Ora, usiamo la seguente istruzione INSERT per creare altri tre record nella tabella COMPANY:

INSERT INTO VALORI AZIENDALI (8, 'Paul', 24, 'Houston', 20000.00);
INSERT INTO VALORI AZIENDALI (9, 'James', 44 ', la Norvegia', 5000.00);
INSERT INTO VALORI AZIENDALI (10, 'James', 45, 'Texas', 5000.00);

Ora, il nostro tavolo ha duplicato nome del record, come segue:

NOME ID Età Indirizzo STIPENDIO
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norvegia 20000.0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Sud-Hall 45.000,0
7 James 24 Houston 10000.0
8 Paul 24 Houston 20000.0
9 James 44 Norvegia 5000.0
10 James 45 Texas 5000.0

Usiamo lo stesso GROUP BY per raggruppare tutti i record Press colonne nome nel modo seguente:

sqlite> NAME SELECT, SUM (STIPENDIO) dal gruppo SOCIETA per nome Ordina per NOME;

Questo produce i seguenti risultati:

NOME SUM (STIP)
---------- -----------
Allen 15000
David 85000
James 20000
Kim 45000
Mark 65000
Paul 40000
Teddy 20000

Lasciate clausola ORDER BY viene utilizzato in combinazione con la clausola GROUP BY, come segue:

sqlite> SELECT NOME, SUM (STIPENDIO) 
         DA società del gruppo per nome Ordina per NOME DESC;

Questo produce i seguenti risultati:

NOME SUM (STIP)
---------- -----------
Teddy 20000
Paul 40000
Mark 65000
Kim 45000
James 20000
David 85000
Allen 15000