2010-09-30 3 views
-1
SELECT * FROM O_PLATI_DAUNE 
WHERE 
    LUNA LIKE  
CASE 
    WHEN LUNA = '7' THEN SUMA ='363623.72' 
    WHEN LUNA = '8' THEN SUMA ='825159.25' 
    WHEN LUNA = '9' THEN SUMA ='182730.99' 
    WHEN LUNA = '10' THEN SUMA ='361722.74' 
    WHEN LUNA = '11' THEN SUMA ='1787574.67' 
    WHEN LUNA = '12' THEN SUMA ='3605005.68' 
ELSE 'N/A' 
END 

Je ne sais pas pourquoi cela ne fonctionne pas, s'il vous plaît, aidez-moi!Cas où clause

Merci beaucoup.

+3

Verr, à gauche, juste sous « onglet ». –

+1

Quelle est votre erreur/problème? Est-ce que vous essayez de faire un cas similaire? Quel serveur utilisez-vous également? – Nix

+0

quelle erreur obtenez-vous s'il vous plaît? –

Répondre

0

Je crois que c'est pour MySQL, donc je recommande la lecture du manuel CASE:

http://dev.mysql.com/doc/refman/5.1/en/case-statement.html

Regardez l'exemple un peu plus bas de la page - la structure de votre cas est désactivée.

Les instructions de cas ne peuvent pas être utilisées directement dans la clause WHERE - en essayant de trouver un exemple, mais pas de chance jusqu'à maintenant.

1

Essayez-vous de faire quelque chose comme:

SELECT id,LUNA,CASE 
    WHEN LUNA = '7' THEN '363623.72' 
    WHEN LUNA = '8' THEN '825159.25' 
    WHEN LUNA = '9' THEN '182730.99' 
    WHEN LUNA = '10' THEN '361722.74' 
    WHEN LUNA = '11' THEN '1787574.67' 
    WHEN LUNA = '12' THEN '3605005.68' 
    ELSE 'N/A' 
    END as SUMA 
FROM O_PLATI_DAUNE