①MySQL是一种(关系型)数据库管理系统。

关系型数据库的代表包括Oracle, Sql Server, MySQL。

②小李在创建完一张数据表后,发现少创建了一列,此时需要修改表结构,应该用哪个语句进行操作?C

解析:

题目中说了需要修改表的结构, 故需要使用alter table

添加列: ALTER TABLE   表名   add 字段名
修改列:  ALTER TABLE   表名   modify 字段名
删除列:  ALTER TABLE   表名   drop 字段名
INSERT是插入语句,UPDATE是更新语句,修改表的数据,并不修改表的结构。

Mysql中表student_table(id,name,birth,sex),插入如下记录:
('1001' , '' , '2000-01-01' , '男');
('1002' , null , '2000-12-21' , '男');
('1003' , NULL , '2000-05-20' , '男');
('1004' , '张三' , '2000-08-06' , '男');
('1005' , '李四' , '2001-12-01' , '女');
查询2001年及之后出生的男生、女生总数,正确的SQL是:
解析:
题中所求的男生,女生的总数,故select sex count(*)
查询的表是student_table
条件的2001年及之后出生的
需要通过sex性别进行分组
select sex count(*)
from student_table
where birth >= '2001'
group by sex;
④有一张person表,主键是id,数据如下:

同时还有一张任务表task,主键也是id:

请找出每个人的任务情况(注意:没有任务也要输出),结果按id降序排列,输出如下:

下面正确的SQL查询语句是:A

解析:

其实仔细观察每个选项的区别,就知道这道题主要考查的是JOIN连接的使用(LEFT JOIN 、JOIN、INNER JOIN、RIGHT JOIN)

观察结果表:
有两个Ming,一个Dong,且 Dong后面的content为null,就能看出来是以person表为主表,task为从表左连接,并以两个表的id相等作为条件连接,以id降序排列显示,这样就会显示左表的所有数据,右边没有与之匹配的久为空。A选项符合
B选项:只获取两表相匹配的数据,没有对应值的就会去掉,所以会漏掉没有任务的情况;
C选项:会获取task表的所有记录,会剔除掉Dong,和题意相反了;
D选择:同样错在会获取两个表中字段匹配关系的记录,漏掉没有任务的情况。

有一张学生成绩表sc(sno 学号,class 课程,score 成绩),示例如下:
可以查询出每个学生的英语、数学的成绩(行转列,一个学生输出一行记录,比如输出[1, 89, 90]的SQL语句?
select sno,
sum(if(class='english',score,0)) as english,
sum( if(class='math',score,0) ) as math
from sc
where class in('english','math')
group by sno
解析:
1.sum函数作用:不加的话就会导致 
 sno english math
  1       90        0
  1       0         85
而我们想要的结果是:
sno english math
  1      90      85 
将上面2条记录合并
2.group by作用:不加会导致所有学生英语成绩都加在一起,数学成绩也会加在一起
 

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

  1. 牛客网Sql

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

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

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

  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. 牛客网sql实战参考答案(mysql版):1-15

    1.查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天(sqlite里面的注释为--,mysql为comment) CREATE TABLE `employees ...

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

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

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

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

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

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

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

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

随机推荐

  1. 记录一次运行vue项目一直不成功的经历

    参考:https://blog.csdn.net/qq_17162169/article/details/115718002 如果前端项目一直起不来,直接删除扩展文件夹试试 // npm安装vue y ...

  2. Hibernate之Criteria

      1,Criteria Hibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供了 Criteria和DetachedCriteria . ...

  3. ubuntu20 宽带连接

    nmcli connection edit type pppoe con-name "连接名称" set pppoe.username 宽带账号 set pppoe.passwor ...

  4. Android 开发Day4

    我们双击进入activity_main.xml 先将android.support.constraint.ConstraintLayout改为LinerLayout线性的,意思就是水平的的结构 并加入 ...

  5. 「AntV」全球AQI数据获取与L7可视化

    1. 引言 L7 地理空间数据可视分析引擎是一种基于 WebGL 技术的地理空间数据可视化引擎,可以用于实现各种地理空间数据可视化应用.L7 引擎支持多种数据源和数据格式,包括 GeoJSON.CSV ...

  6. 2024-03-23:用go语言,一张桌子上总共有 n 个硬币 栈 。每个栈有 正整数 个带面值的硬币, 每一次操作中,你可以从任意一个栈的 顶部 取出 1 个硬币,从栈中移除它,并放入你的钱包里。

    2024-03-23:用go语言,一张桌子上总共有 n 个硬币 栈 .每个栈有 正整数 个带面值的硬币, 每一次操作中,你可以从任意一个栈的 顶部 取出 1 个硬币,从栈中移除它,并放入你的钱包里. ...

  7. SpringBoot 常用注解总结

    核心注解 1. @SpringBootApplication 主要用于开启自动配置,它也是一个组合注解,主要组合了 @SpringBootConfiguration.@EnableAutoConfig ...

  8. Win10下安装Java JDK 1.8 配置环境变量

    1.下载地址:https://www.oracle.com/java/technologies/javase-downloads.html 2.双击运行,下一步.下一步-- 3.新建变量名:JAVA_ ...

  9. spring boot @Scheduled 单线程的问题

    package com.lxw.lxwDemo; import org.springframework.scheduling.annotation.EnableScheduling; import o ...

  10. 英语文档之vivado界面

    vivado英文界面 一.界面内容 图中就是vivado常用的界面. 二.常用窗口 首先是左侧的project manager:IP INTEGRATOR(IP 集成器),simulation(仿真) ...