SQL查询,帮别人做的面试题好像
程序员文章站
2022-04-22 11:32:28
...
--根据姓名查询成绩,并替换成绩为好坏
--查询姓名有重复的,学生的所有考试信息
--今天以前的记录可以删除,今天以后的记录不能删除
--根据日期、登录部门ID、类型ID查询出 ‘今天以后’的记录
select m.sname,m.cname,(case when m.grade>=60 then '好' else '差' end) as flag from m_a m where m.sname='张三';
--查询姓名有重复的,学生的所有考试信息
select *from m_a t where t.sname=( select mm.sname from ( select m.sname ,count(*) ct from m_a m group by m.sname) mm where ct>1 );
--今天以前的记录可以删除,今天以后的记录不能删除
--根据日期、登录部门ID、类型ID查询出 ‘今天以后’的记录
select * from onduty_leaderduty e where round(sysdate-to_date(e.ondutydate,'yyyy-MM-dd HH24:mi:ss'))<0 and e.itemid=1111 and e.departmentid=1111040100000;--或者(这样不准确,因为数据库中ondutydate记录的十分秒为0.0.0)
select * from onduty_distribute e where sysdate>to_date(e.ondutydate,'yyyy-MM-dd HH24:mi:ss') and e.dismid=1112