CDA持证人阿涛哥

2023-10-14   阅读量: 1892

Mysql 数据分析师

CDA学习之SQL中子查询可以出现在以下( )什么子句中?

扫码加入数据分析学习群


20.在SQL语句中每种语法都有其位置规范,放错位置是会导致错误的,SQL中子查询可以出现在以下( )子句中。

A.group by

B.order by

C.having

D.limit


一级教材答案与解析:

答案:C。解析:子查询可以出现在select、where、having、from、join子句中,所以选C。


备注:

有小伙伴说order by子句也可以出现子查询,我查了一下 确实可以

对于考试, 先按照考题解析的答案来记忆,实际工作遇到特殊问题,自己再具体问题具体处理


#关于ORDER BY子句可以使用子查询作为排序条件


#建表语句:


CREATE TABLE employees (

员工编号 INT,

姓名 VARCHAR(50),

性别 VARCHAR(10),

工作时间 INT

);


CREATE TABLE salary (

员工编号 INT,

收入 INT,

支出 INT

);



#插入示例数据语句:

INSERT INTO employees (员工编号, 姓名, 性别, 工作时间)

VALUES

(1, '张三', '男', 2),

(2, '李四', '女', 3),

(3, '王五', '男', 5);


INSERT INTO salary (员工编号, 收入, 支出)

VALUES

(1, 5000, 2000),

(2, 6000, 2500),

(3, 7000, 3000);



#查询语句:


SELECT 姓名,员工编号, 性别, 工作时间

FROM employees

ORDER BY (SELECT 收入-支出

FROM salary

WHERE salary.员工编号=employees.员工编号) DESC;


#牵涉两个表时可以执行出来

SELECT 姓名,员工编号, 性别, 工作时间,收入-支出

FROM employees

ORDER BY (SELECT 收入-支出

FROM salary

WHERE salary.员工编号=employees.员工编号) DESC;

#单个表时会报错

SELECT 员工编号,收入-支出

FROM salary

ORDER BY (SELECT 收入-支出

FROM salary

)DESC ;


添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
0.0000 0 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子