牛客网-SQL专项训练19
①下列哪个语句是授予用户SQLTest对数据库Sales的CUSTOMERS表的列cid、cname的查询权限(C)

解析:
授予权限的语法:
GRANT <权限> ON 表名(列名) TO 用户名
②在STUDENT表中按class_type统计数据行数分组情况后,筛选出数据行数为大于10行的组:A

解析:
需要显示的数据为class_type以及它的行数,需要按class_type进行分组,然后进行筛选行数 > 10的数据。
select的语法结构:
SELECT [DISTINCT] 字段名
FROM 表名
[WHERE] 条件筛选
[GROUP BY] 分组
[HAVING] 分组筛选
[ORDER BY] 排序
[LIMIT] 名次或分页
运算执行顺序:
(1)首先运算的是FROM子句,根据FROM子句中指定的一个或多个表创建工作表;
(2)如果存在WHERE子句,则WHERE子句对步骤1获得的工作表进行条件筛选,删除不符合条件的记录;
(3)如果存在GROUP BY子句,则对步骤2生成的结果表按指定字段进行分组,生成一份新的结果表;
(4)如果存在HAVING子句,则对步骤3的结果表按指定条件进行筛选,删除掉不满足筛选条件的记录;
(5)执行SELECT子句,删除不包含在SELECT 字段名,所指定的字段。如果SELECT子句中包含关键字DISTINCT,则执行去重复运算……
(6)如果有ORDER BY子句,则按指定的排序规则对结果表进行排序操作;
(7)如果需要找前几名,用LIMIT名次。
where和having的区别:
③要求删除商品表中价格大于3000的商品,下列SQL语句正确的是(A)

删除操作语法为:DELETE FROM <表名> [WHERE <条件>];故A选项正确,B选项delete后面不应有*,即语法错误,而C选项,删除表中的全部数据,忽略了题中的限定条件。
修改操作的格式为UPDATE<表名> SET <列名>=<值表达式>[<列名>=<值表达式>]...[WHERE<条件>]
④Mysql中表student_table(id,name,birth,sex),score_table(stu_id,subject_name,score),查询每个学生的分数最高的学科以及对应分数、学生明细记录,如下SQL正确的是(D)?




解析:
先观察四个选项第一个子查询
A:select stu_id,max(score) as c1 from score_table group by stu_id order by c1 desc limit 1
从score_table表里查询每个学生的成绩的最高分并以stu_id进行分组,并且最高分降序排序,只筛选出一条数据。问题就在于这样会去掉同为最高分,但是只取了一条数据,就会漏掉同科目同为最高分的其他同学,故A错;
B、C、D:select stu_id,max(score) as c1 from score_table group by stu_id
从score_table表里查询每个学生的成绩的最高分并以stu_id进行分组;
在观察BC选项和D选项的区别在于这个筛选条件:on t1.stu_id = t2.stu_id and t1.c1 = t2.score 或者 on t1.c1 = t2.score
当然是既需要id一致也需要分数一致才能筛选出来。
⑤下面哪些字符最可能会导致sql注入? A

解析:
单引号作为MySQL中的字段值封装方式,最容易被用作注入攻击。SQL注入的关键是单引号的闭合
牛客网-SQL专项训练19的更多相关文章
- 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 *--查询所有信息就用* ...
- 牛客网多校训练第一场 F - Sum of Maximum(容斥原理 + 拉格朗日插值法)
链接: https://www.nowcoder.com/acm/contest/139/F 题意: 分析: 转载自:http://tokitsukaze.live/2018/07/19/2018ni ...
- 牛客网多校训练第四场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 ...
- 牛客网--C++-2017/8/19
“\t\v\\0”长度=4:\0:字符串结束符:\\0:\将\0进行了转义,所以\0是两个字符 类的友元函数的访问权限跟类内部的方法相同,但是友元函数不属于本类的对象,一般它是另一个类的成员函数,不能 ...
- 牛客网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 ...
随机推荐
- 修复华硕笔记本fn+f2在ubuntu下wifi不能够正常使用和WiFi Disabled (Hard-blocked) (译文)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文发布于 2014-12-22 11:49:16 ...
- Spring Boot学习日记13
学习引入Thymeleaf Thymeleaf 官网:https://www.thymeleaf.org/ Thymeleaf 在Github 的主页:https://github.com/thyme ...
- FreeRTOS教程6 互斥量
1.准备材料 正点原子stm32f407探索者开发板V2.4 STM32CubeMX软件(Version 6.10.0) Keil µVision5 IDE(MDK-Arm) 野火DAP仿真器 XCO ...
- 解密prompt系列25. RLHF改良方案之样本标注:RLAIF & SALMON
上一章我们主要唠了RLHF训练相关的方案,这一章我们主要针对RLHF的样本构建阶段,引入机器标注来降低人工标注的成本.主要介绍两个方案:RLAIF,和IBM的SALMON. RLAIF RLAIF: ...
- 【虚幻引擎】DTWebSocketServer 蓝图创建WebSocket服务器插件使用说明
本插件可以使用蓝图创建WebSocket服务器,并监听响应数据. 下载地址在文章最后. 1. 节点说明 Create Web Socket Server – 创建WebSocket服务器对象并开启监听 ...
- CentOS 7.6 防火墙打开、关闭,端口开启、关闭
查看CentOS版本 cat /etc/redhat-release 显示系统名.节点名称.操作系统的发行版号.操作系统版本.运行系统的机器 ID 号. uname -a 防火墙命令 #查询防火墙状态 ...
- Oracle查询表空间信息
记录一下 SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_ ...
- 为什么SOTA网络在你的数据集上不行?来看看Imagnet结果的迁移能力研究
论文通过实验证明,ImageNet上的模型并不总能泛化到其他数据集中,甚至可能是相反的,而模型的深度和宽度也会影响迁移的效果. 如果需要参考,可选择类别数与当前任务相似的数据集上的模型性能.论文通 ...
- Scala 复杂分词求和(二元组)
1 package chapter07 2 3 object Test18_ComplexWordCount { 4 def main(args: Array[String]): Unit = { 5 ...
- #线段树,离散#nssl 1476 联
分析 由于下标过大,考虑离散,不仅仅是区间左右端点 假设只有一个区间从1到\(x\),那么修改后答案应该是\(x+1\) 所以说还要记录右端点+1的位置,你以为这就能A了吗 为了避免标记被覆盖,无论是 ...