if Anweisung in Abfrage
Kermit
- datenbank
Hallo,
habe mal eine Frage zur If-Anweisung in einem MySql Statement.
Habe z.B. die Abfrage
select feld1, feld 2, if(feld3, feld4, feld5) as angabe from Tabelle where....
kann ich in der if-Abfrage auch mehrere Felder abfragen, bzw. wie kann ich mehrere Parameter abfragen um zu bestimmen ob feld4 oder feld5 ausgegeben werden?
Geht sowas:
if(feld3='1' and feld6<=CURRENT_DATE and feld7>=CURRENT_DATE , feld4, feld5) as angabe
?
Oder muß das anders formuliert werden?
Da ich das derzeit selber nicht ausprobieren kann, wäre ich dankbar, wenn Ihr mir eine Antwort geben könntet.
Danke und Grüße,
Kermit
SELECT feld1, feld2 FROM tabelle WHERE feld3='1'AND feld6<= CURRENT_DATE AND feld7>= CURRENT_DATE
dein where hast du ja schon mit folgepünktchen. was spricht gegen solche formulierung?
SELECT feld1, feld2 FROM tabelle WHERE feld3='1'AND feld6<= CURRENT_DATE AND feld7>= CURRENT_DATE
dein where hast du ja schon mit folgepünktchen. was spricht gegen solche formulierung?
select feld1, feld 2, if(feld3, feld4, feld5) as angabe from Tabelle where....
naja es soll entweder feld4 oder feld5 als "angabe" ausgewählt werden je nachdem ob die Klauseln erfüllt sind oder nicht.
So wie Du vorschlägst zeigt er mir ja nur die Ergebnisse, bei denen die Klauseln erfüllt sind und wenn sie nicht erfüllt sind kein Ergebnis - aber er soll abhängig von den Klauseln entweder feld4 oder feld5 als "angabe" wählen.
Grüße,
Kermit
Hello,
select feld1, feld 2, if(feld3, feld4, feld5) as angabe from Tabelle where....
naja es soll entweder feld4 oder feld5 als "angabe" ausgewählt werden je nachdem ob die Klauseln erfüllt sind oder nicht.
So wie Du vorschlägst zeigt er mir ja nur die Ergebnisse, bei denen die Klauseln erfüllt sind und wenn sie nicht erfüllt sind kein Ergebnis - aber er soll abhängig von den Klauseln entweder feld4 oder feld5 als "angabe" wählen.
Als Ausdruck im IF darf jeder logisch auswertbare gültige SQL-Ausdruck erscheinen.
http://dev.mysql.com/doc/refman/5.1/en/control-flow-functions.html
Für eine Mehrfachauswahl bietet sich auch CASE an.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom