软件开发----SQL基础每日刷题(转载于牛客)

news2024/12/26 22:43:21

1.        查询语句select stuff('lo ina',3, 1, 've ch')结果为?

A        love

       love china

       china love

       china

正确答案:B

解析:

STUFF(原字符, 开始位置, 删除长度, 插入字符)

从指定的起点处开始删除指定长度的字符,并在此处插入另一组字符


2.        已知数据表STU,现需创建视图view_s,显示所有男同学的信息。下列SQL语句正确的是()

A        CREATE VIEW AS SELECT * FROM STU

B        CREATE VIEW view_s AS SELECT * FROM STU WHERE 性别='男'

C        CREATE view_s SELECT * FROM STU WHERE 性别='男'

D        CREATE view_s AS SELECT * FROM STU

正确答案:B

解析:

创建视图语句:

CREATE [OR REPLACE] VIEW 视图名称[(列名列表)] AS SELECT语句 [ WITH [ CASCADED | LOCAL ] CHECK OPTION ] from 表名 [where 条件]


3.        下列关于视图说法错误的是?

A        视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据

       创建视图用CREATE VIEW

       修改视图用ALTER VIEW

D        删除视图用DELETE VIEW

正确答案:D

解析:

视图(子查询):是从一个或多个表导出的虚拟的表,其内容由查询定义。具有普通表的结构,但是不实现数据存储。单表视图一般用于查询和修改,会改变基本表的数据;多表视图一般用于查询,不会改变基本表的数据。

【例子】:   在一个班级里,作为班主任需要知道全班同学所有课程的成绩,便于全面指导;而数学老师只需要知道全班学生的数学成绩就行了。所以视图的一个重要作用就是区分权限。

由题意得,视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据符合题意,BC也符合视图的语法,而删除视图应该使用DROP VIEW进行,故选D


4.        Mysql中表student_table(id,name,birth,sex),插入如下记录:

('1004' , '张三' , '2000-08-06' , '男');
('1005' , NULL , '2001-12-01' , '女');

('1006' , '张三' , '2000-08-06' , '女');

('1007' , ‘王五’ , '2001-12-01' , '男');

('1008' , '李四' , NULL, '女');

('1009' , '李四' , NULL, '男');

('1010' , '李四' , '2001-12-01', '女');

执行

select t1.*,t2.*
from (
select * from student_table where sex = '男' ) t1 
left  join 
(select * from student_table where sex = '女')t2 
on t1.birth = t2.birth and t1.name = t2.name ; 


的结果行数是()?

A        4

       2

C        3

D        1

正确答案:C

解析:

题目中【left join ... on t1.birth = t2.birth and t1.name = t2.name ; 】left join意思是包含inner join的结果(左右表中的birth、name都不为NULL时才会匹配上),无法匹配t2中一个字段为NULL或两个字段都为NULL的记录(所以t2结果不含有'李四'、 '2001-12-01' ),查询结果如下图:


5.        下列选项关于游标的作用叙述正确的是()

A        不允许定位在结果集的特定行

B        从结果集的目标位置检索一行或一部分行

       不支持对结果集中当前位置的行进行数据修改

D        为由其他用户对显示在结果集中的数据所做的更改提供不同级别的可见性支持

正确答案:D

解析:

游标是一种从包括多条数据记录的结果集中每次提取一条记录以便处理的机制,可以看做是查询结果的记录指针。A选项,游标允许定位在结果集的特定行;B选项,从结果集的当前位置检索一行或一部分行;C选项,支持对结果集中当前位置的行进行数据修改。


6.        从学生信息表(student)中提取姓名(name)列值为NULL的记录,下列选项正确的是()

A        SELECT * FROM student WHERE name IS NOT NULL

       SELECT name FROM student WHERE IS NULL

C        SELECT name FROM student WHERE it IS NULL

D        SELECT * FROM student WHERE name IS NULL

正确答案:D

解析:A选项,为提取姓名列值为非NULL的记录,与题目所求不符;B选项的WHERE语句中缺少指定列名,条件不全;C选项试图用it指代列名,但SQL语句不支持该方法。


7.        下列操作在视图上无法完成的是?

A        视图数据查询

       更新视图数据

C        在视图中定义新的基本表

D        在视图中定义新视图

正确答案:C

解析:

由题意得,在视图中可以进行基本的增删改查故AB排除,在视图中也可以定义新的视图,却无法创建表,因为视图是个虚表,故C错误


8.        Mysql中表student_table(id,name,birth,sex),插入如下记录:

('1003' , '' , '2000-01-01' , '男');
('1004' , '张三' , '2000-08-06' , '男');
('1005' , NULL , '2001-12-01' , '女');

('1006' , '张三' , '2000-08-06' , '女');

('1007' , ‘王五’ , '2001-12-01' , '男');

('1008' , '李四' , NULL, '女');

('1009' , '李四' , NULL, '男');

('1010' , '李四' , '2001-12-01', '女');

执行

select count(t2.birth)  as c1
from (
select * from student_table where sex = '男' ) t1 
inner  join 
(select * from student_table where sex = '女')t2 
on t1.birth = t2.birth and t1.name = t2.name ; 


的结果行数是()?

A        1

B        2

C        3

D        4

正确答案:A

解析:

题目中【inner join ... on t1.birth = t2.birth and t1.name = t2.name ; 】inner join意思是左右表中的birth、name都不为NULL时才会匹配上,结果中不含有一个字段为NULL或两个字段都为NULL的记录,结果只有'张三'一条记录。所以选A.

查询结果如下图:


9.        比赛结果result表内容如下:
Date                     Win
2017-07-12               胜
2017-07-12               负
2017-07-15               胜
2017-07-15               负
如果要生成下列结果, 正确的sql语句是:(      )
比赛日期            胜     负
2017-07-12          1      1
2017-07-15          1      1

A

select Date As 比赛日期, (case when Win='胜' then 1 else 0 end) 胜, (case when Win='负' then 1 else 0 end) 负 from result group by Date

B

select Date As 比赛日期, SUM(case when Win='胜' then 1 else 0 end) 胜, SUM(case when Win='负' then 1 else 0 end) 负 from result

C

select Date As 比赛日期, SUM( when Win='胜' then 1 else 0 end) 胜, SUM( when Win='负' then 1 else 0 end) 负 from result group by Date

D

select Date As 比赛日期, SUM(case when Win='胜' then 1 else 0 end) 胜, SUM(case when Win='负' then 1 else 0 end) 负 from result group by Date

正确答案:D

解析:

由题意得,需要行转列按日期分组并对列求和,因此需要group by Date, sum(...胜/负)。

A中无sum,错;

B中无group by,错;

C中case when ... then ... else ... end用法不正确,错;

选D


10.        下列选项中不属于结构化查询语言的组成部分的是()

A        数据定义语言

B        数据处理语言

       数据字典

D        数据库事务

正确答案:C

解析:

SQL语言的组成部分有:数据定义语言、数据处理语言、数据控制语言、数据库事务。

数据字典是关于数据库中数据的描述,是元数据,而不是数据本身。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2212539.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

六tomcat

​​​​​​ Java Web环境搭建 1. 初识Tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。Tomcat 是 Apache 服务器…

redis集成到spring boot中使用

(一)添加依赖 redis服务器在官网中公开了自己使用的协议--RESP,所以我们可以使用这个协议来访问redis服务器,但是如果我们要自己实现库,那肯定是非常麻烦的,所以我们可以使用网上的库,我们直接调…

读数据工程之道:设计和构建健壮的数据系统08主要架构概念

1. 域和服务 1.1. 域是你正在为其构建的现实世界主题区域 1.2. 服务是一组功能,其目标是完成一项任务 1.3. 一个域可以包含多个服务 1.4. 确定领域中应包含的内容 1.4.1. 确定领域应该包含什么以及要包括哪些服务时,最好的建议是简单地去与用户和利益…

SQLAlchemy入门:详细介绍SQLAlchemy的安装、配置及基本使用方法

SQLAlchemy是一个流行的Python SQL工具包和对象关系映射(ORM)框架,它为开发人员提供了一种高效、灵活的方式来与数据库进行交互。本文将详细介绍SQLAlchemy的安装、配置及基本使用方法,并通过代码示例和案例分析,帮助新…

C++ | Leetcode C++题解之第478题在圆内随机生成点

题目&#xff1a; 题解&#xff1a; class Solution { private:mt19937 gen{random_device{}()};uniform_real_distribution<double> dis;double xc, yc, r;public:Solution(double radius, double x_center, double y_center): dis(0, 1), xc(x_center), yc(y_center),…

Web前端高级工程师培训:异步处理专题

异步处理专题 课前准备 工具 编辑器 VSCode浏览器 Chorme 前置知识 ES6基础语法 课堂主题 同步及异步概念方块运动的实现promise的用法then的返还值Async 函数 和 await 课堂目标 理解并学会使用promise使用方式以及async 、await的使用 同步异步概念 js是单线程 单线程…

动态规划-多状态问题——LCR.090.打家劫舍

1.题目解析 题目来源&#xff1a;LCR.090.打家劫舍——力扣 测试用例 2.算法原理 1.状态表示 每一个房子都有两个状态&#xff1a;被偷与不被偷&#xff0c;因此需要两个dp表f/g来表示被偷与不被偷&#xff0c;其中f[i]/g[i]表示小偷走到第i个位置的最大偷钱数 2.状态转移方程…

【开源物联网平台】Fastbee系统稳定性和压测报告

目录 一、机器准备 二、压测步骤 2.1 去除认证&#xff0c;修改clientid识别问题 2.2 添加重发布脚本 三、压测结果 四、压测工具使用 一、机器准备 准备两台服务器&#xff0c;一台为部署fastbee服务端应用&#xff0c;另一台为客户端压力机。其中&#xff1a; fastbee…

TensorRT-LLM七日谈 Day3

今天主要是结合理论进一步熟悉TensorRT-LLM的内容 从下面的分享可以看出&#xff0c;TensorRT-LLM是在TensorRT的基础上进行了进一步封装&#xff0c;提供拼batch&#xff0c;量化等推理加速实现方式。 下面的图片更好的展示了TensorRT-LLM的流程&#xff0c;包含权重转换&…

动态规划-简单多状态dp问题——面试题17.16.按摩师

多状态问题的核心就是每个位置不止有一个状态&#xff0c;因此需要多个dp表表示不同状态对应位置的值&#xff0c;然后根据题目考虑特定情况写出状态转移方程即可 1.题目解析 题目来源&#xff1a;面试题17.16.按摩师——力扣 测试用例 2.算法原理 1.状态表示 这里与路径问…

红米AC2100路由器原官方固件关闭IPv6防火墙

红米AC2100路由器原官方固件关闭IPv6防火墙 问题背景 我家里宽带开通了IPv6&#xff0c;并且获得了公网的IPv6地址。在同一Wi-Fi内部&#xff0c;可以使用公网IPv6正常访问。 但是&#xff0c;当我切换为手机流量&#xff0c;也就是公网环境&#xff0c;访问就失败了。 问题…

苹果最新论文:LLM只是复杂的模式匹配 而不是真正的逻辑推理

大语言模型真的可以推理吗&#xff1f;LLM 都是“参数匹配大师”&#xff1f;苹果研究员质疑 LLM 推理能力&#xff0c;称其“不堪一击”&#xff01;苹果的研究员 Mehrdad Farajtabar 等人最近发表了一篇论文&#xff0c;对大型语言模型 &#xff08;LLM&#xff09; 的推理能…

<<迷雾>> 第11章 全自动加法计算机(5)--顺序取数 示例电路

顺序地从存储器里取数的电路方案. info::操作说明 在开始之前, 地址计数器 AC 需要清零, 以指向地址 0000. 按一下开关 KAR, 将 AC 当前的地址锁存到 AR 地址寄存器. 按住 KRD, 不要松开(注: 系统中使用的是普通开关, 无需按住), 再按一下 KDR, 数据保存到寄存器 DR 中, 最后,…

Mapstruct的使用备忘【代替BeanUtils高效率属性拷贝】

文章目录 Mapstruct的使用备忘【代替BeanUtils高效率属性拷贝】1. 引入mapstruct依赖2. 数据准备2-1 准备一个子类&#xff0c;TestData2-2 准备两个类&#xff0c;SourceData&#xff0c;TargetData&#xff0c;属性完全一样 3. 定义Mapper接口【注&#xff1a;这里的Mapper是…

AIGC毕设项目分享:基于RAG的数字人对话系统及其应用

本研究的主要目标是设计并实现一个基于检索增强生成&#xff08;RAG&#xff09;技术的数字人对话系统&#xff0c;旨在提升数字人系统在多轮对话中的上下文管理、情境感知能力以及动态内容生成效果。系统结合了深度学习中的最新大语言模型技术&#xff0c;通过引入RAG框架来增…

概率论基础01_事件概率

目录 一、事件 1、概率 1.1基本事件 1.3必然事件 1.4不可能事件 1.5样本空间 1.6样本点 2、事件间的关系 2.1包含关系 2.2并集 2.3交集 2.4差集 2.5互斥事件 2.6对立事件 2.7完备事件组 3、运算律 3.1交换律 3.2结合律 3.3分配律 3.4对偶律 二、概率 1、…

10.MySql全局参数优化

从上图可以看出SQL及索引的优化效果是最好的&#xff0c;而且成本最低&#xff0c;所以工作中我们要在这块花更多时间。 一、全局参数 配置文件my.ini(windows)或my.cnf(mac)的全局参数&#xff1a; 假设服务器配置为&#xff1a; CPU&#xff1a;32核 内存&#xff1a;64G…

2025推荐选题|基于MVC的农业病虫害防治平台的设计与实现

作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参与学生毕业答辩指导&#xff0c;…

机器视觉AI场景为什么用Python比C++多?

好多开发者在讨论机在机器视觉人工智能领域的时候&#xff0c;纠结到底是用Python还是C&#xff0c;实际上&#xff0c;Python 和 C 都有广泛的应用&#xff0c;选择 Python而不是 C 可能有以下一些原因&#xff1a; 语言易学性和开发效率 语法简洁&#xff1a; Python 语法简…

【部署篇】Redis-01介绍‌

一、Redis介绍‌ 1、什么是Redis&#xff1f; ‌Redis&#xff0c;英文全称是Remote Dictionary Server&#xff08;远程字典服务&#xff09;&#xff0c;Redis是一个开源的、使用‌ANSI C语言编写的‌Key-Value存储系统&#xff0c;支持网络、可基于内存亦可持久化。‌ 它提…