phpbar.de logo

Mailinglisten-Archive

AW: case - syntaxfrage

AW: case - syntaxfrage

Wolfgang Hauck wbh@euta.net
Fri Nov 8 08:59:39 2002


Joerg Holz wrote:
> morgen,
>
> zum erstenmal versuche ich CASE zu benutzen, es klappt aber nicht.
>
> SELECT *
> FROM tblContainerForm
> WHERE ProjektID = '1'
> AND Sportart = 'Fussball'
> AND (CASE WHEN Liga IS NOT NULL THEN Liga = '1. BL'
> ELSE Typ = 'Gesamttabelle' END)
>
> die WHERE-bedingung soll Liga benutzen, wenn in Liga etwas eingetragen
> ist, ansonsten soll WHERE Typ = 'Gesamttabelle' nehmen.
>
> was mache ich verkehrt?
>
> joerg
>

Hallo Joerg,

SELECT id, IF(Liga IS NULL 'keine Liga',Liga) as Liga [,...]
FROM tblContainerForm
WHERE ProjektID = '1'
AND Sportart = 'Fussball'

CASE bzw. IF darf nur im Select - Statement stehen. Bei ner Where Clausel 
machts ja auch keinen Sinn, das ist die Suchbedingung und SQL kann ja erst 
dann entscheiden wenn es was gefunden hat... ;-))

Eine Where - Bedingung in einer Entscheidungsclausel kann nicht laufen. Das 
liegt daran, dass ja in den Variablen irgendetwas drinstehen muss um zu 
entscheiden und das ist vor der Suchbedingung nicht der Fall...

MFG Wolfgang

-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive