牛客网-SQL专项训练17
①SQL查询中使用WHere子句指出的是:查询条件
②Mysql中表student_table(id,name,birth,sex),查询重复姓名、重复次数,并按重复次数降序排列,正确的是(A)?


解析:
MySQL的运算顺序:
(1)首先运算的是FROM子句,根据FROM子句中指定的一个或多个表创建工作表;
(2)如果存在WHERE子句,则WHERE子句对步骤1获得的工作表进行条件筛选,删除不符合条件的记录,注意where后面不能使用聚合函数,故C错;
(3)如果存在GROUP BY子句,则对步骤2生成的结果表按指定字段进行分组,生成一份新的结果表;
(4)如果存在HAVING子句,则对步骤3的结果表按指定条件进行筛选,删除掉不满足筛选条件的记录,注意select中自定义的字段用在having后面,故D错;
(5)执行SELECT子句,删除不包含在SELECT 字段名,所指定的字段。如果SELECT子句中包含关键字DISTINCT,则执行去重复运算……
(6)如果有ORDER BY子句,则按指定的排序规则对结果表进行排序操作,不指定默认为ASC升序,降序为DESC,【B错在升序了】;
(7)如果需要找前几名,用LIMIT名次。
③下列关于视图说法错误的是?D

解析:
视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据符合题意,
创建视图用CREATE VIEW
修改视图用ALTER VIEW
删除视图用DROP VIEW
④下列选项中都属于关系代数运算符中集合运算符的是(A)


⑤Mysql(版本8.0.25)中表student_table(id,name,birth,sex),插入如下记录:
('1004' , '张三' ,'2000-08-06' , '男');
('1009' , '李四', '2000-01-01', '男');
('1010' , '李四', '2001-01-01', '男');
('1006' , '王五', '2000-08-06' , '女');
('1008' , '张三', '2002-12-01', '女');
('1012' , '张三', '2001-12-01', '女');
('1011' , '李四', '2002-08-06' , '女');
('1013' , '赵六' ,'2000-09-06' , '男');
现有SQL:
select t1.*,t2.*
from (
select * from student_table where sex = '男' ) t1
full join
(select * from student_table where sex = '女')t2
on t1.name = t2.name ;
如下SQL中与上述SQL实现的语义和结果一致的是()?
首先Mysql(版本8.0.25)是不支持full join的。
但是full join:返回左表和右表中的所有行。当某行在另一表中没有匹配行,则另一表中的列返回空值。
结果应该为:


A选项: t1.name=null意思就是说在保证男名字全为null的情况下,还要保留女的所有信息,故最最终得到的结果为:4条女信息+男全空信息 union all 4条男女信息+一条男信息(赵六)+女空信息

D选项:一条男生空信息+女生王五 union all 五个男的信息+女空信息

B选项:where t1.name=null,只输出一条女信息+男空信息 union all 右边4条男女信息+1条男信息+女空信息


C选项:一条男空+女生王五信息再加4条男女信息 union all 右边是一条男信息(赵六)+女空信息


其实我觉得BC选项结果都是正确的,只是排列顺序不一样,而C选项 的结果就与full join结果顺序一致。
牛客网-SQL专项训练17的更多相关文章
- MySql面试题、知识汇总、牛客网SQL专题练习
点击名字直接跳转到链接: Linux运维必会的100道MySql面试题之(一) Linux运维必会的100道MySql面试题之(二) Linux运维必会的100道MySql面试题之(三) Linux运 ...
- 牛客网Sql
牛客网Sql: 1.查询最晚入职的员工信息 select * from employees where hire_date =(select max(hire_date) from employee ...
- 牛客网多校训练第二场D Kth Minimum Clique
链接:https://ac.nowcoder.com/acm/contest/882/D来源:牛客网 Given a vertex-weighted graph with N vertices, fi ...
- 牛客网sql刷题解析-完结
查找最晚入职员工的所有信息 解题步骤: 题目:查询最晚入职员工的所有信息 目标:查询员工的所有信息 筛选条件:最晚入职 答案: SELECT *--查询所有信息就用* ...
- 牛客网多校训练第四场C sequence
(牛客场场有笛卡尔树,场场都不会用笛卡尔树...自闭,补题心得) 题目链接:https://ac.nowcoder.com/acm/contest/884/C 题意:给出两个序列a,b,求max{mi ...
- 牛客网sql实战参考答案(mysql版):16-21
16.统计出当前(titles.to_date='9999-01-01')各个title类型对应的员工当前(salaries.to_date='9999-01-01')薪水对应的平均工资.结果给出ti ...
- 牛客网2018暑期训练 第三场 a题
#include <bits/stdc++.h> using namespace std; vector<int> path; ; short dp[maxn][maxn][m ...
- Java基础之引用(String,char[],Integer)总结于牛客网的专项练习题
1.String的引用: 下列代码执行后的结果为: public class Test { public static void main(String[] args) { StringBuffer ...
- 牛客网多校训练第三场 C - Shuffle Cards(Splay / rope)
链接: https://www.nowcoder.com/acm/contest/141/C 题意: 给出一个n个元素的序列(1,2,...,n)和m个操作(1≤n,m≤1e5),每个操作给出两个数p ...
- 牛客网多校训练第三场 A - PACM Team(01背包变形 + 记录方案)
链接: https://www.nowcoder.com/acm/contest/141/A 题意: 有n(1≤n≤36)个物品,每个物品有四种代价pi,ai,ci,mi,价值为gi(0≤pi,ai, ...
随机推荐
- Ambiq Micro-AMA3B2KK-KBR芯片可穿戴产品解决方案开发之基于Freertos系统的按键和LED控制
一 前记 freetos在可穿戴设备上应用十分广泛,用来实现基本的按键和led控制,来熟悉它的基本架构.这是一个不错的尝试. 二 源码分析 1 系统初始化 这个启动task,相当于系统的入口函数,这里 ...
- use shell scrpit to jlink download bin file
一 JLINK 下载 JLINK作为一个arm的调试工具,是很多基于arm芯片无法绕过去的调试和下载工具.这里有一个问题,就是该工具链接和使用需要的命令特别多,假如不做成脚本,会浪费很多时间,笔者花了 ...
- github无法访问?vscode 无法使用github登录同步? 改 hosts 吧
一.无法访问 github.com ? 想要去 github.com 上拿来主义,结果访问不了,或者 npm 时一直失败? 是什么原因不用问,直接使用 https://tool.lu/ip/ 查询到 ...
- 为什么ASP.NET Core的路由处理器可以使用一个任意类型的Delegate
毫不夸张地说,路由是ASP.NET Core最为核心的部分.路由的本质就是注册一系列终结点(Endpoint),每个终结点可以视为"路由模式"和"请求处理器"的 ...
- TP6框架--EasyAdmin学习笔记:实现数据库增删查改
这是我写的学习EasyAdmin的第三章,这一章我给大家分享下如何进行数据库的增删查改 上一章链接:点击这里前往 上一章我们说到,我仿照官方案例,定义了一条路由goodsone和创建了对应数据库,我们 ...
- 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。
private static void stringSubLen(String msg) { int max = 0; int left = 0; Map<Character,Integer&g ...
- KingbaseES V8R6备份恢复案例之---sys_restore实现schema转换
**案例说明:** sys_restore用于sys_dump备份的数据恢复,在实际的应用中有需求,将从sys_dump备份对象从原schema中转换到到另外的schema,sys_restore支持 ...
- KingbaseES V8R3 备份恢复系列之 -- sys_rman备份过程分析
案例说明: 本案例通过对KingbaseES sys_rman物理备份过程的详细描述,有助于在执行sys_rman过程中发生故障的分析. 适用版本: KingbaseES V8R3 一.sys_r ...
- 连接Windows 平台 KingbaseES异常
概述 应用连接Windows平台的KingbaseES 数据库,报错"com.kingbase8.util.KSQLException: 致命错误: 用户"system" ...
- KingbaseES V8R6 集群运维案例 -- 归档失败导致 Switchover 失败
案例说明: KingbaseES V8R6集群,备库在执行'repmgr standby switchover'时,切换失败,出现以下故障: 经检查发现是主库归档配置错误,主库出现归档失败导致. 适用 ...