求大神解救,把性别中的1,变成女,2变成男,怎么实现,求对应SQL语句;
现SQL语句如下:
select a.cno as 员工编号,a.cname as 姓名, a.sexno as 性别,b.deptname as 部门,a.cdt as 入职日期,c.cbdt as 合同签订日期,c.cedt as 合同结束日期 from hr_epm_main as a
left join dept as b on a.dept=b.deptno
left join hr_epm_cont as c on c.secondside=a.cno
where a.empstatus='01'and a.cname not like '系统%'
现查询结果如下:
select a.cno as 员工编号,a.cname as 姓名,_ CASE a.sexno WHEN 1 THEN '女' ELSE '男' END as 性别,_b.deptname as 部门,a.cdt as 入职日期,c.cbdt as 合同签订日期,c.cedt as 合同结束日期 from hr_epm_main as a
left join dept as b on a.dept=b.deptno
left join hr_epm_cont as c on c.secondside=a.cno
where a.empstatus='01'and a.cname not like '系统%'
CASE a.sexno WHEN 1 THEN '女' ELSE '男' END
用的oracle数据库的话可以直接用decode函数的, decode(a.sexno,'1','女','2','男','') as 性别
感谢@
fsy351和@xx_rj ,因为@fsy351比较贴心一点,就选了你了,谢谢各位。
select a.cno as 员工编号,a.cname as 姓名,
CASE
when a.sexno=1 then '女'--1是女
when a.sexno=7369 then '男'--2是男
else '男'--默认是男
end
性别,--别名
b.deptname as 部门,a.cdt as 入职日期,c.cbdt as 合同签订日期,c.cedt as 合同结束日期 from hr_epm_main as a
left join dept as b on a.dept=b.deptno
left join hr_epm_cont as c on c.secondside=a.cno
where a.empstatus='01'and a.cname not like '系统%'
select a.cno as 员工编号,a.cname as 姓名,
**
CASE
when a.sexno=1 then '女'
when a.sexno=7369 then '男'
else '男'
end
性别,
**
b.deptname as 部门,a.cdt as 入职日期,c.cbdt as 合同签订日期,c.cedt as 合同结束日期 from hr_epm_main as a
left join dept as b on a.dept=b.deptno
left join hr_epm_cont as c on c.secondside=a.cno
where a.empstatus='01'and a.cname not like '系统%'