J'ai une table 'OrderBook
'Sql Groupe de requête par
il a champ Oid, symbol, price, qty, buysell
je veux résumer de buy/sell
prix et Qty
groupe par symbol
J'ai une table 'OrderBook
'Sql Groupe de requête par
il a champ Oid, symbol, price, qty, buysell
je veux résumer de buy/sell
prix et Qty
groupe par symbol
SELECT SUM(buy),
SUM(sell),
SUM(price),
SUM(qty)
FROM OrderBook
GROUP BY symbol
Comme vous pouvez le voir - SQL ressemble à un langage naturel et est presque similaire à ce que vous avez demandé dans la question ;-)
SELEC Symbole T, SOMME (achat), SOMME (vente), SOMME (quantité) À PARTIR DE OrderBook Symbole GROUP BY
Utilisez-le de cette façon, que la requête puisse vous aider jusqu'à un certain point ......... .. à l'intérieur du SUM (tableau_field) écrivez le nom du champ pour lequel vous voulez obtenir la somme.
Je pense qu'il s'agit d'un «carnet de commandes»; la table contient probablement des ordres individuels faits. La colonne «acheter/vendre» indique si le commerce était un achat ou une vente; et il est probable que les statistiques requises sont la somme du «prix * quantité» (la valeur des ventes ou des achats) et peut-être aussi la somme des quantités (volume total des actions), regroupées par symbole et achat/vente. Je me demande si l'OID identifie en quelque sorte la date et l'heure de la commande?
Si cela est correct, l'agrégation devrait probablement:
SELECT Symbol, BuySell,
SUM(Price * Quantity) AS Value,
SUM(Quantity) AS Volume
FROM OrderBook
GROUP BY Symbol, BuySell
ORDER BY Symbol, BuySell;
@InSane: « ' acheter/prix de sell' » partie est toujours pas assez claire, puisque' price' est un domaine aussi. – zerkms
@zerkms - Yup. Je connais. Je ne peux que formater ce que je comprends :-) L'OP devra clarifier cette partie – InSane