2016-09-07 4 views
0

Ich habe einen Mysql-Befehl, der Daten summiert und Sad, es ein Varchar zu sagen.Wählen Sie SUM unter Verwendung mehrerer Kriterien in MYSQL

hier ist mein Befehl

SELECT SUM(replace(TotalAmount, ',', '')) 
FROM physicalinv_final 
WHERE ItemCode LIKE 'DRY%' AND 
     PINo = 'PI00000001' 

Die Ausgabe, dass bis zu summieren TotalAmount ist, wo ItemCode das Wort wie dieses DRY und PINo = PI00000001

Meine Frage enthält, die ich auch andere Kriterien haben wie dieser

BEV 
DES 
MEA 
OTH 
DRY 
RIC 
SEA 

Ich versuche diesen Code

SELECT SUM(replace(TotalAmount, ',', '')) FROM physicalinv_final where ItemCode like 'DRY%' ItemCode like 'BEV%' and So On ..... and PINo = 'PI00000001'

aber die Ausgabe ist null obwohl ich ein Daten haben, die DRY enthält.

dies der Ausgang i

link

wollen, ist es eine Möglichkeit, dieses Problem beheben?

TYSM Hilfe

+1

Können Sie einige Beispiele veröffentlichen "Gesamtbetrag"? – tomb

+0

Sure sir pls warte auf meinen bearbeiteten Post –

+0

@Tomb Ich bin _Guessing_ (nur eine Vermutung), dass der 'TotalAmount' ist eine Zahl, die Kommas enthält. Er versucht, die Kommas zu entfernen, und dann lässt MySQL den passenden Cast herausfinden, der in 'SUM' verwendet werden soll. –

Antwort

0

Verwenden or und group by statt:

SELECT ItemCode, SUM(replace(TotalAmount, ',', '')) 
FROM physicalinv_final 
WHERE (ItemCode like 'DRY%' OR 
     ItemCode like 'BEV%' OR ...) 
    AND PINo = 'PI00000001' 
GROUP BY ItemCode 

Oder wenn Sie nur die Gesamt sum enthält jede dieser Itemcodes möchten, entfernen Sie die group by Klausel:

SELECT SUM(replace(TotalAmount, ',', '')) 
FROM physicalinv_final 
WHERE (ItemCode like 'DRY%' OR 
     ItemCode like 'BEV%' OR ...) 
    AND PINo = 'PI00000001' 
+1

youre right sir Pls sehen den bearbeiteten Beitrag –

+0

@ShadowFiend - diese Abfragen produzieren Ihre erwarteten Ergebnisse. Die ersten Gruppen nach Element und die zweite gibt die Summe zurück. Benutze sie beide oder "verbinde" sie zusammen. Ihre erwarteten Ergebnisse sind im Excel-Format und ein wenig unklar ... – sgeddes

+0

@sgeddes Seine Reihenfolge der Operationen in der "WHERE" -Klausel konnte dazu führen, dass keine Ergebnisse zurück kamen. –

Verwandte Themen