如何根据某列的值的不同以不同别名查出结果集
悬赏分:0 - 离问题结束还有 14 天 23 小时
比如一个表t_keyword,里面有一列type。type只有两个值,1和2
我想根据1来得到单词,2来得到详解。
我用case会有语法错误。
select id,type_id,case k.pk_type
when 1 then k.name wordKeywordName
when 2 then k.name detailKeywordName end
from keyword
那是因为then后面不能加别名。
我想得到如下结果
id typeid wordKeywordName detailKeywordName
1 1 value
2 2 value
3 1 value
悬赏分:0 - 离问题结束还有 14 天 23 小时
比如一个表t_keyword,里面有一列type。type只有两个值,1和2
我想根据1来得到单词,2来得到详解。
我用case会有语法错误。
select id,type_id,case k.pk_type
when 1 then k.name wordKeywordName
when 2 then k.name detailKeywordName end
from keyword
那是因为then后面不能加别名。
我想得到如下结果
id typeid wordKeywordName detailKeywordName
1 1 value
2 2 value
3 1 value
when 1 then k.name
when 2 then k.name end
from keyword
id typeid wordKeywordName detailKeywordName
1 1 value
2 2 value
3 1 value这个4个列头,只有3个值。
可以在CASE WHEN中用别名
case k.pk_type when 1 then k.name end as wordKeywordName,
case k.pk_type when 2 then k.name end as detailKeywordName
from keyword
select id,type_id,case k.pk_type
when 1 then k.name END AS wordKeywordName,
when 2 then k.name END AS detailKeywordName end
from keyword