dedlfix: mysql: Case/When Abfrage liefert unerwartetes Ergebnis

Beitrag lesen

Tach!

Müßte aber nicht dann eine Abfrage ala:

SELECT 
    SUM(
        CASE 
           WHEN cumulative = 1 THEN percent
           WHEN cumulative = 'auzzuuisdfhiwq' THEN 1000
           ELSE 0 
        END) 
FROM phppos_items_taxes;

10 ergeben?

Die eigentliche Frage ist, wie unterschiedliche Typen miteinander verglichen werden, beziehungsweise wie Strings in Zahlen konvertiert werden. Dein String ist jedenfalls keine Zahl und bei der Konvertierung kommt 0 raus.

dedlfix.