数据库多表查询、聚合函数、约束等知识点练习题
数据库基础知识练习题
题目1 (多选): 关于多表的子查询,下列描述正确的是()
- A. 子查询的结果是单行单列时,通常作为父查询的条件
- B. 子查询的结果是多行单列时,放在父查询的条件位置,使用 in
- C. 子查询的结果是多行多列,作为父查询的一张表(虚拟表),起别名
- D. 如果我们想使用聚合函数作为查找的结果,并且聚合函数存在子查询语句中,那么我们可以直接将聚合函数写在 select 后面
答案: B、C
题目2 (单选): 下列聚合函数的定义正确的是( )
- A. 聚合函数是对多列值进行运算,并返回单个值
- B. 聚合函数是对一组值进行运算,并返回单个值
- C. 聚合函数是对多列值进行运算,并返回多个值
- D. 聚合函数是对一组值进行运算,并返回多个值
答案: B
题目3 (单选): 关于 having 和 where 的用法,下列使用错误的是( )
- A. WHERE 和 HAVING 写在 GROUP BY 的前面
- B. WHERE 不能写在 HAVING 的后面
- C. WHERE 后面不能跟聚合函数
- D. HAVING 是分组之后再进行筛选
答案: C
题目4 (单选): 下列语句中哪个是子查询( )
- A. SELECT * FROM USERS WHERE ID IN (3,6,9)
- B. SELECT AVG(AGE) FROM USERS
- C. SELECT * FROM USERS WHERE AGE > (SELECT AVG(AGE) FROM USERS)
- D. SELECT AVG(AGE),COUNT(ID) FROM USERS
答案: C
题目5 (单选): 查询数据库中的第 3 条到第 6 条数据,下列选项中正确的是( )
- A. SELECT * FROM USERS LIMIT 2,5
- B. SELECT * FROM USERS LIMIT 3,6
- C. SELECT * FROM USERS LIMIT 2,3
- D. SELECT * FROM USERS LIMIT 3,3
答案: B
题目6 (单选): 查询结果是一个笛卡尔积的是( )
- A. SELECT * FROM EMP,DEPT
- B. SELECT * FROM EMP INNER JOIN DEPT WHERE EMP.DID=DEPT.ID
- C. SELECT * FROM EMP DEPT WHERE EMP.DID=DEPT.ID
- D. SELECT * FROM EMP,DEPT WHERE EMP.DID=DEPT.ID
答案: A
题目7 (单选): 关于约束效果说法不正确的是( )
- A. 主键约束能保证数据的唯一和非空
- B. 非空约束能保证数据值不能为 null,但是可以重复
- C. 唯一约束能保证数据不能重复,可以为 null,但不能有多个 null
- D. 当没有插入字段值时,默认值约束可以自动填充默认值
答案: B
题目8 (单选): 非空约束的关键字是( )
- A. not null
- B. is not null
- C. not is null
- D. unique
答案: A
题目9 (单选): 外键约束说法不正确的是( )
- A. 设置外键列的值时,必须保证该值在主表中存在
- B. 通过 foreign key references 可以设置外键关联约束
- C. 当主表数据删除时,子表的相关行必然会被删除
- D. 外键关联可以设置一列或多列
答案: C
题目10 (单选): 下列是一对一关系的是( )
- A. 老师与学生
- B. 学生与图书
- C. 学生与学校
- D. 学生与身份证
答案: D
原文地址: https://www.cveoy.top/t/topic/otWK 著作权归作者所有。请勿转载和采集!