php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.08.2009, 15:12  
Neuer Benutzer
 
Registriert seit: 19.05.2009
Beiträge: 7
christophM befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] MySQL CASE liefert immer NULL zurück

Hallo,

ich versuche gerade eine CASE Anweisung im SQL Query einzubauen, erhalte als Rückgabewert aber immer nur NULL zurück.

Die MySQL Reference habe ich schon gelesen und kann mir selbst auch nicht erklären, was da schief läuft. Liegt es am JOIN? (aber auch wenn ich es als Subquery mache, also den CASE dann im äusseren Query, bleibt das Ergebnis gleich)

Code:
SELECT
jt2.col,
(
  CASE jt2.col
  WHEN NULL THEN 0
  WHEN NOT NULL THEN 1
  END
) AS bool
FROM table1 AS jt1 LEFT JOIN table2 AS jt2 ON jt1.id = jt2.table1_id
WHERE jt1.id = 123
Die bool Spalte verharrt immer auf dem NULL-Wert. Wenn ich eine ELSE Bedingung einfüge, wird dann dieser Wert genommen. Aber einer der beiden Fälle NULL bzw. NOT NULL müsste doch greifen, oder?

Danke für die Hilfe!
christophM ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.08.2009, 15:49  
Neuer Benutzer
 
Registriert seit: 19.05.2009
Beiträge: 7
christophM befindet sich auf einem aufstrebenden Ast
Standard

Okay, hat sich erledigt. In der User Comments im MySQL Reference Manual MySQL :: MySQL 5.1 Reference Manual :: 11.3 Control Flow Functions ist der Hinweis, dass "WHEN NULL" niemals true sein kann.. Benutze jetzt IF() stattdessen.
christophM ist offline   Mit Zitat antworten
Alt 29.08.2009, 16:55  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

WHEN NULL funktioniert in MySQL nirgendwo
Stattdessen benutzt man IS NULL
__________________
Frank ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Sinnvoller Bilder mit INSERT oder UPDATE in DB speichern? AnnyKey Datenbanken 3 12.05.2009 01:06
[Erledigt] Datumsformat IMAP -> MySQL umwandeln - wie? Namevac PHP Tipps 2009 5 05.05.2009 13:36
Abfrage dauert ewig! keystone Datenbanken 12 26.03.2009 21:39
[Erledigt] im sql kann ich tabelle nicht hinzufügen autofieber Datenbanken 7 01.03.2009 18:38
Summen aus mehreren Tabellen Taube Datenbanken 46 23.01.2009 18:23
[Erledigt] Left join und inner join stefanjann Datenbanken 7 16.10.2008 15:45
html2ps: url als pdf rendern und datei speichern grafik2 PHP Tipps 2008 13 29.09.2008 11:17
DB Portierung ins neue Mysql: Error 1060 duplicate column dealer Datenbanken 4 02.11.2007 08:45
Transaktion(en) mit der InnoDB-Engine, aber wie?! PsychoEagle Datenbanken 12 23.07.2007 12:11
Normalisierung einer chaotischen Tabelle maeck Datenbanken 10 12.12.2006 18:17
Updaten Delet und Insert klappen nicht PHP Tipps 2006 13 13.06.2006 13:59
[MySQL] Problem mit einer verschachtelten Abfrage aktionkuba Datenbanken 7 06.04.2005 14:07
Fehler bei der MySQL Abfrage PHP Tipps 2005 4 19.01.2005 18:32
Fehler in der MySQL Abfrage Datenbanken 11 19.01.2005 14:38

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql case, mysql case when null, mysql case null, mysql case anweisung, http://www.php.de/datenbanken/58547-erledigt-mysql-case-liefert-immer-null-zurueck.html, mysql case when, mysql case anweisung beispiel, case mysql, mysql case when is null, case when mysql, php mysql case, sql case mysql, mysql case abfrage, mysql jt2, mysql case when not null, php mysql query liefert null, case anweisung mysql, mysql case beispiele, mysql select case when null, mysql verschachtelt case example

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum