Ich versuche, zwei verschiedene Werte in meiner Datenbank zu summieren.Korrekte Syntax, wenn SUM-Fall, wenn Anweisung formatiert ist
Species
kann entweder 12 oder 14 sein. Ich habe den Rest in meiner Select-Anweisung entfernt.
Ich möchte insgesamt oder SUM
für alle Zeilen zu tun, die eine Spezies Wert von 12 haben, und die gleiche, wenn die Spezies einen Wert von 14.
hat verstehe ich nicht, wie die Syntax zu formatieren. Das ist meine Abfrage:
SELECT h.HarvestDate, c.LotNo, h.Producer, c.species
SUM CASE WHEN c.Species = 12 THEN LambYT ELSE 0 as LambYT
SUM CASE WHEN c.Species = 14 THEN LambYTSpoolJoint ELSE 0 as LambYTSpoolJoint
FROM BANSS.dbo.DixonCarcass_InProcess c, BANSS.dbo.HarvestData_SFDCApp h
WHERE c.LotNo = h.Lot
AND c.Species in (12, 14)
AND h.Program not LIKE 'K&R%'
GROUP BY h.HarvestDate, c.LotNo, h.Producer
Allerdings glaube ich, das ist falsch. Ich möchte eine SUM
, wo Species = 12
und eine Summe, wo Species = 14
und insgesamt die zwei Summen wie TOTAL
.
Es kann eine gute Idee sein, c.species zu der vorgewählten Spaltenliste einzuschließen und sie auch in die Gruppierung einzubeziehen –
Es gibt einen Fehler auf '+', ich denke nicht, dass es die Mathematik versteht, beide hinzuzufügen 12 und 14 zusammen. –
@SualehFatehi Das kam mir in den Sinn, aber da er sich über die 'Spezies'-Kolumne angesammelt hatte, nahm ich an, dass er nicht damit gruppieren wollte. Andernfalls würde die Aggregation keinen Sinn ergeben. –