SQL SELECT字段依赖于行中的另一个字段

Jam*_*mes 1 sql select case

我正在尝试从字段AS"initial_cost"中选择一个值,但是该值在不同的列中,具体取决于channel_id字段的值,如果channel_id为1,那么它在field_id_4中,如果它是2那么它; s in field_id_10.

我尝试过以下各种突变,但无济于事,

SELECT (CASE WHEN channel_id = 1 
        THEN field_id_4 
        FROM exp_channel_data 

        WHEN channel_id = 2 
        THEN field_id_10 FROM exp_channel_data 
        END) as initial_cost
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

Ron*_*nis 6

像这样?

select title
      ,entry_date
      ,case when channel_id = 1 then field_id_4
            when channel_id = 2 then field_id_10
        end as initial_cost
  from exp_channel_data;
Run Code Online (Sandbox Code Playgroud)