此问题与SQL Server有关。我有一个名为gender
的列表,1或0将保存为整数。我想知道在使用SELECT
语句选择标签时是否有方法分配标签。
例如
SELECT gender
FROM emp
如果1出现Male
并且出现Female
,则应显示{{1}}。
答案 0 :(得分:3)
您可以使用CASE
:
SELECT CASE WHEN gender = 1 THEN 'Male' ELSE 'Female' END AS gender
FROM emp
答案 1 :(得分:3)
使用CASE运算符,即1时的CASE性别,然后是'男性'别的'女性'结束。 完整选择如下:
SELECT gender,
CASE gender
when 1 then 'Male'
else 'Female'
end as gender_name
FROM emp
<强> UPD:强> 使用N / A选项来处理所有可能的optios(如果性别字段值不在范围[0,1]内,但我更喜欢使用检查约束来确定可能的值,以避免奇怪/意外的值):
SELECT gender,
CASE
gender
when 1 then 'Male'
when 0 then 'Female'
else 'N/A'
end as gender_name
FROM emp
答案 2 :(得分:1)
您可以使用CASE...WHEN...THEN...END
来实现此目标
select case when GENDER = 1 then 'Male'
when GENDER = 0 then 'Female'
else 'N/A'
end as GENDER
from emp;
详细了解此here