①在SQL中用条件表示价格在在30至40之间,应该如何表达(B)

解析:IN 与BETWEEN AND的区分 (数字型)

1.in (xx,xx,xx,...)  通常是不连续的,in(30,40)要查询的数据中是否存在30或40;
2.BETWEEN AND 注意是闭区间,BETWEEN 1 AND 199,是1-199,含1和199。
②已知数据表STU,现需创建视图view_s,显示所有男同学的信息。下列SQL语句正确的是(B)

解析:

创建视图的语法: create view 视图名 as select * from 表名 where 条件

ACD:要么缺少筛选条件,要么语法错误

③在MySQL中,现有评分表evaluate(包含班级编号cid和分数point字段),有班级表grade(包含班级编号cid等字段), 查询evaluate 表中有没有班级均分大于等于80分的,如果存在,则查询显示grade表按cid由大到小排名的前五行记录,SQL语句是()

分析:

1.需要显示的字段:grade中的所有信息

2.需要查询的表:grade

3.进行查询

先从表evaluate中计算point的平均分大于等于80的记录

select cid AVG(point) as avg

from evaluate

group by cid

having avg >= 80;

然后从筛选出的表中按cid从大到小降序排列,选出前五行的记录

select *

from grade

where exists(

slect cid AVG(point) as avg

from evaluate

group by cid

having avg >= 80

)

order by grade.cid desc

limit 5;

注意:group by 后面可以使用别名

④Mysql中表student_table(id,name,birth,sex),id字段值可能重复,分别查询男生、女生的不重复id总数,如下SQL正确的是(B)?

A:如果是男就为1,否则为null,然后再对1去重,就只会有一个1,sum()最终结果就只有一个1,女生也同样如此,不符合题意。

C:与A情况一样,如果是男就为1,否则为null,然后再对1去重,就只会有一个1,count()最终就只有一条记录,count()为1,不符合题意。

D:distinct需要写在case前面

B:如果是男就显示它的id,否则为null,然后再对id去重,就只会留下不重复的id,count()最终结果就是不重复的id数。

注意:sum(),max(),avg(),min(),count()都是忽略nul的

⑤已知grade表如下,要求找出分数重复的数据,SQL语句是:

分析:

先统计每个mark的数量,并mark进行分组

select mark count(mark) as nums

from grade

group by mark;

再找出mark数量大于1的分数:

select mark

from(

select mark count(mark) as nums

from grade

group by mark

) as temp

where nums > 1

注意:

  • 创建临时表的时候记得起表名;
  • where子句不能与聚合函数一起使用;
  • where 、group by、 having 的执行顺序是 先where 再group by 再having。

牛客网-SQL专项训练8的更多相关文章

  1. MySql面试题、知识汇总、牛客网SQL专题练习

    点击名字直接跳转到链接: Linux运维必会的100道MySql面试题之(一) Linux运维必会的100道MySql面试题之(二) Linux运维必会的100道MySql面试题之(三) Linux运 ...

  2. 牛客网Sql

    牛客网Sql: 1.查询最晚入职的员工信息  select * from employees where hire_date =(select max(hire_date) from employee ...

  3. 牛客网多校训练第二场D Kth Minimum Clique

    链接:https://ac.nowcoder.com/acm/contest/882/D来源:牛客网 Given a vertex-weighted graph with N vertices, fi ...

  4. 牛客网sql刷题解析-完结

    查找最晚入职员工的所有信息 解题步骤: 题目:查询最晚入职员工的所有信息        目标:查询员工的所有信息 筛选条件:最晚入职           答案: SELECT *--查询所有信息就用* ...

  5. 牛客网多校训练第四场C sequence

    (牛客场场有笛卡尔树,场场都不会用笛卡尔树...自闭,补题心得) 题目链接:https://ac.nowcoder.com/acm/contest/884/C 题意:给出两个序列a,b,求max{mi ...

  6. 牛客网2018暑期训练 第三场 a题

    #include <bits/stdc++.h> using namespace std; vector<int> path; ; short dp[maxn][maxn][m ...

  7. Java基础之引用(String,char[],Integer)总结于牛客网的专项练习题

    1.String的引用: 下列代码执行后的结果为: public class Test { public static void main(String[] args) { StringBuffer ...

  8. 牛客网多校训练第三场 C - Shuffle Cards(Splay / rope)

    链接: https://www.nowcoder.com/acm/contest/141/C 题意: 给出一个n个元素的序列(1,2,...,n)和m个操作(1≤n,m≤1e5),每个操作给出两个数p ...

  9. 牛客网多校训练第三场 A - PACM Team(01背包变形 + 记录方案)

    链接: https://www.nowcoder.com/acm/contest/141/A 题意: 有n(1≤n≤36)个物品,每个物品有四种代价pi,ai,ci,mi,价值为gi(0≤pi,ai, ...

  10. 牛客网多校训练第一场 J - Different Integers(树状数组 + 问题转换)

    链接: https://www.nowcoder.com/acm/contest/139/J 题意: 给出n个整数的序列a(1≤ai≤n)和q个询问(1≤n,q≤1e5),每个询问包含两个整数L和R( ...

随机推荐

  1. buildFast.js node.js 快速发布到gitee上,这样就不用每次点击,并且自动弹出发布页面,再点击发布,完美!

    buildFast.js node.js 快速发布到gitee上,这样就不用每次点击,并且自动弹出发布页面,再点击发布,完美! const fs = require('fs-extra'); fs.c ...

  2. git 删除本地创建的仓库常用方法

    基本方法   清除本地文件夹下的git文件,然后在重新初始化新建的git仓库 具体实施 //删除文件夹下的所有 .git 文件 find . -name ".git" | xarg ...

  3. 3DCAT+东风日产:共建线上个性化订车实时云渲染方案

    近年来,随着5G网络和云计算技术的不断发展,交互式3D实时云看车正在成为一种新的看车方式. 与传统的到4S店实地考察不同,消费者可以足不出户,通过网络与终端设备即可实现全方位展示.自选汽车配色.模拟效 ...

  4. 活动报名|3DCAT实时渲染云行业生态合作系列沙龙之“云XR如何赋能虚拟仿真实验教学”线上活动邀您参会

    当前,虚拟现实发展方兴未艾,"XR+教育"融合发展前景广阔. 3DCAT实时渲染云积极联动教育行业渠道商等生态合作伙伴,合力打造"虚拟现实实验室"." ...

  5. drf(初始drf,restfull规范 ,CBV、APIView、Request源码)

    一 web开发模式 # 前后端混合开发(前后端不分离):通过模版语法,在服务器上处理好html的内容(组合字符串),返回给浏览器一堆字符串(字符串封装到respons对象里),浏览器在渲染 # 前后端 ...

  6. golang sync.Map之如何设计一个并发安全的读写结构?

    在 golang中,想要并发安全的操作map,可以使用sync.Map结构,sync.Map 是一个适合读多写少的数据结构,今天我们来看看它的设计思想,来看看为什么说它适合读多写少的场景. 如下,是g ...

  7. 记录--微信小程序,uniapp,H5端发送,显示emoji表情

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 小伙伴们,在开发中有没有遇到过发布帖子或者实时聊天需要发送到一些emoji表情的. 但是每当我们直接将emoji表情提交到后台的接口又会报 ...

  8. Android 接收微信、QQ其他应用打开,第三方分享

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 在AndroidManifest.xml注册ACTION事件 <activity android:name="com.te ...

  9. C# 中文文字识别OCR

    效果 完整Demo下载https://download.csdn.net/download/lw112190/81743333 1. Vs2017打开OcrLiteOnnxCs.sln. 2. 解决方 ...

  10. verilog中的数据类型

    Verilog中的数据格式 1.基本概念 verilog中写一个数据的通用格式是 n'b000_000_···_000,表示一个n位的二进制数.基于这个通用式,可以将其分为三个部分:位数.加权数和实际 ...