oracle常见sql笔试题,一路SQL笔试题

oracle常见sql笔试题,一路SQL笔试题SQLcodeSQL gt witht 教师号 星期号 是否有课 as 2select1 2 有 fromdual3uni 3 有 fromdual4uni 1 有 fromdual5uni 2 有 fromdual6uni

SQL codeSQL> with t(教师号,星期号,是否有课) as(

2 select 1,2,’有’ from dual

3 union all select 1,3,’有’ from dual

4 union all select 2,1,’有’ from dual

5 union all select 3,2,’有’ from dual

6 union all select 1,2,’有’ from dual

7 )

8 select 教师号,

9 sum(case when 星期号=1 and 是否有课=’有’ then 1 else 0 end) 星期一,

10 sum(case when 星期号=2 and 是否有课=’有’ then 1 else 0 end) 星期二,

11 sum(case when 星期号=3 and 是否有课=’有’ then 1 else 0 end) 星期三

12 from t

13 group by 教师号

14 order by 教师号;

教师号 星期一 星期二 星期三

———- ———- ———- ———-

1 0 2 1

2 1 0 0

3 0 1 0

——解决方案——————–SQL codeSQL> select * from teacher;

ID WEEK H

———- ———- –

1 2 y

1 3 y

2 1 y

3 2 y

1 2 y

SQL> select id,sum(case when week = 1 then 1 else null end) mon,sum(case when week = 2 then 1 else null end ) tue,sum(case when week = 3 then 1 else null end) wed from teacher group by id;

ID MON TUE WED

———- ———- ———- ———-

1 2 1

2 1

3 1

——解决方案——————–

CREATE TABLE t_teacher (t_id NUMBER,t_q NUMBER ,t_yn VARCHAR2(10));

INSERT INTO t_teacher VALUES(1,2,’有’);

INSERT INTO t_teacher VALUES(1,3,’有’);

INSERT INTO t_teacher VALUES(2,1,’有’);

INSERT INTO t_teacher VALUES(3,2,’有’);

INSERT INTO t_teacher VALUES(1,2,’有’);

COMMIT;

SELECT t.t_Id 教师号,

SUM(CASE

WHEN t.t_q = 1 AND t.t_Yn = ‘有’ THEN

1

ELSE

NULL

END) 星期一,

sum(CASE

WHEN t.t_q = 2 AND t.t_Yn = ‘有’ THEN

1

ELSE

NULL

END) 星期二,

sum(CASE

WHEN t.t_q = 3 AND t.t_Yn = ‘有’ THEN

1

ELSE

NULL

END) 星期三

FROM t_Teacher t

GROUP BY t.t_Id

——解决方案——————–

select teacherno 教师号,

sum(case when flag=’有’ and weekday=1 then 1 else 0 end) 星期一,

sum(case when flag=’有’ and weekday=2 then 1 else 0 end) 星期二,

sum(case when flag=’有’ and weekday=3 then 1 else 0 end) 星期三,

sum(case when flag=’有’ and weekday=4 then 1 else 0 end) 星期四,

sum(case when flag=’有’ and weekday=5 then 1 else 0 end) 星期五,

sum(case when flag=’有’ and weekday=6 or weekday=7 then 1 else 0 end) 星期日

from test

group by teacherno

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/202147.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 上午7:47
下一篇 2026年3月20日 上午7:47


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号