2010-04-13 13 views
11

J'ai une question concernant une requête SQL-select: La table contient plusieurs colonnes, dont une colonne Integer appelée "taille" - La tâche que j'essaie d'effectuer est d'interroger la table pour la somme de toutes les lignes (leurs valeurs), ou pour plus de précision obtenir une colonne artificielle dans mon ResultSet appelé "overallSize" qui contient la somme de tous "taille" - valeurs dans la table. Préférable, il serait possible d'utiliser une clause WHERE pour ajouter seulement certaines valeurs ("WHERE bla = 5" ou quelque chose de similaire).SQL - Ajouter toutes les valeurs de ligne d'une colonne dans un singletable

Le moteur DB est HSQLDB (HyperSQL), conforme à SQL2008.

Merci d'avance :)

Répondre

10
SELECT SUM(size) AS overallSize FROM table WHERE bla = 5; 
+0

Oui; exactement ce que je cherchais :) Merci beaucoup! –

9

Ce n'est pas aussi simple que cela, est-il?

SELECT SUM(SIZE) 
FROM Table 
WHERE bla = '5' 
+0

Oui, ça fonctionne comme un charme :) Merci! Je savais que ce serait simple, mais ceci: D –

1

Vous cherchez:

SELECT SUM(Size) FROM MyTable WHERE bal = '5' 

Vous pouvez également (en MSSQL)

SELECT Size, COl1, COl2 FROM MyTable WHERE bla ='5' COMPUTE SUM(Size) 
+0

C'est un nouveau sur mon, la syntaxe de calcul. Votez pour cela. – Paddy

+0

Bien que, après avoir regardé, le mot-clé ne devrait pas être COMPUTE? – Paddy

+1

@Paddy - oui vous avez raison, l'échec de la mémoire. Mettra à jour. – cjk