问答详情
源自:5-4 案例3

这样统计1980年入职的员工个数,为什么错了

select count(to_char(hiredate,'yyyy') = '1980')  from emp;

提问者:那时公子 2017-11-11 17:22

个回答

  • 蔡江江0
    2018-03-03 11:47:22

    语法有误,count函数里面条件可以这样子写count(case when to_char(xxx,'yyyy')='年份' then 1 else null end),可以用sum函数统计select sum(case when to_char(xxx,'yyyy')='年份' then 1 else 0 end) from 表名,统计时条件还可以写在后面 select count(*) from 表名 where to_char(xxx,'yyyy')='年份'

  • 虫二002
    2018-02-26 15:19:59

    count函数里怎么能有等式呢。。。


  • wzpanxiaol
    2017-11-11 18:06:57

    '1980'要带双引号的吧