PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQLi/PDO/(MySQL) (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert (http://www.selfphp.de/forum/showthread.php?t=19597)

flashsurface 15.06.2008 19:59:28

Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert
 
Hallo zusammen,

ich habe eine MySQL ABfrage mit mehreren LEFT JOINs welche auch einwandfrei funktioniert. In einem Rückgabewert können verschiedene Zahlen enthalten sein oder eben NULL Wert falls beim JOIN kein Wert in der Referenztabelle gefunden wurde. Ausgegeben werden sollen aber nicht die Werte bzw. NULL, sondern einfach 2 Werte: yes bzw. no. Ist eine Referenz enhalten (=Zahlenwert) dann 'yes', wenn Wert = NULL dann 'no'. Die Ausgabe der MySQL Query soll nach den Werten sortiert werden, worauf die IF Abfrage läuft, daher kann ich das auch nicht mit PHP realisieren.

Hier genau besteht mein Problem:
Ich habe versucht das ganz mit IF zu machen, leider wird bei Wert=0 ebenfalls der Ausdruck false. Steht auch so in MySQL 5 Doku (DB ist 5.0.37). Ich bräuchte eine IF Überprüfung welche _nur_ bei NULL ein 'no' zurück liefert, so dass die Ausgabe eben nach 'no' sortiert werden kann (diese Werte stehen dann ganz oben).

SELECT ...... IF(tab.field<>NULL,'yes','no')

tab.field hab ich schon als VARCHAR sowie INT definiert, in beiden Fällen kein Erfolg.
Kann mir hier jemand weiterhelfen bzw. Gedankenanstoss geben?

Danke, Gruss
Michel

stb 15.06.2008 21:16:10

AW: Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert
 
SELECT ...... IF(tab.field IS NOT NULL,'yes','no')
=, != und <> funktioniert bei null nicht gut
nimm lieber IS NULL oder IS NOT NULL

stb 15.06.2008 21:21:09

AW: Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert
 
Zitat:

Zitat von flashsurface (Beitrag 117386)
...Überprüfung welche _nur_ bei NULL ein 'no' zurück liefert...

IS NULL und IS NOT NULL reagiert definitiv und ausschliesslich und ganz bestimmt nur bei NULL oder eben nicht NULL :)


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:24:12 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.