2016-05-26 9 views
2

Bitte helfen Sie den Fehler in folgenden SQL-Code zu überprüfen:MYSQL CASE-Anweisung mehrere Bedingungen

select 
case when (z.mso_group_id = '3' and z.model_id = '22887081') then coalesce(level_2_id,996) level_2_id 
     when (z.mso_group_id = '4' and z.model_id = '22911859') then coalesce(level_2_id,997) level_2_id 
     when (z.mso_group_id = '5' and z.model_id = '22915074') then coalesce(level_2_id,998) level_2_id 
     when (z.mso_group_id = '2' and z.model_id = '22908275') then coalesce(level_2_id,999) level_2_id 
    end level_2_id 
from 
database_name 

Antwort

2

Sie wiederholen Sie die Spalte Alias. Beabsichtigen Sie das?

select (case when (z.mso_group_id = '3' and z.model_id = '22887081') then coalesce(level_2_id,996) 
      when (z.mso_group_id = '4' and z.model_id = '22911859') then coalesce(level_2_id,997) 
      when (z.mso_group_id = '5' and z.model_id = '22915074') then coalesce(level_2_id,998) 
      when (z.mso_group_id = '2' and z.model_id = '22908275') then coalesce(level_2_id,999) 
     end) as level_2_id 
from database_name;