【MK】Python全栈 阶段二:习题汇总 二:MySQL数据表的基本操作:基本查询

【MK】Python全栈 阶段二:习题汇总 三:MySQL数据表的基本操作:高级查询 版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题1.1 MySQL的综合应用1.2 MySQL与Python交互二、多选题三、练习题四、编程题 一、单选题 1.1 MySQL的综合应用 1.下列 A . B . C . D . 1.2 MySQL与Python交互 二、多选题 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ... 阅读详情

版权声明:本文为博主原创文章,未经博主允许不得转载。



一、单选题

1.1 基本查询

1.1.1 普通查询

1.如图所示:( B )
在这里插入图片描述

  • A .is
  • B .as
  • C .on
  • D .in

2.关于数据分页,下列描述不正确的是( C )

  • A .可以使用limit关键字限定结果集的数量
  • B . limit写在from 表名之后,格式为limit 起始位置,偏移量
  • C .如果limit子句只有一个参数时,该参数表示的是起始位置,起始值默认为1
  • D .如果limit子句只有一个参数时,该参数表示的是偏移量,起始值默认为0 【√】

3.关于结果集排序,下列描述不正确的是( D )(选一项)

  • A .使用order by子句对结果集按照某种顺序进行排序
  • B .order by 列名 ASC:表示对结果集进行升序排列
  • C .order by 列名 DESC:表示对结果集进行降序排列
  • D .order by 列名:表示对结果集进行降序排列 【默认:升序排列】

4.已有student表如下图所示,查询学生缴纳的学费(tuition)金额,按学费从大到小排序,下列选项正确的是 ( B )

在这里插入图片描述

  • A .select name,tuition from student ORDER BY tuition; 【默认:升序排列】
  • B .select name,tuition from student ORDER BY tuition desc;
  • C .select name tuition from student ORDER BY tuition DESC; 【语法错误】
  • D .select name,tuition from student ORDER BY tuition ASC; 【升序排列】

5.已有student表如下图所示,查询表中的学生姓名(name),入学日期(enrollment_date),缴纳的学费(tuition)金额,按学费和入学日期依次从小到大排序,下列选项正确的是( )

在这里插入图片描述

A.select enrollment_date,tuition from t_student ORDER BY tuition,enrollment_date asc;【×】

B.select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date;

C.select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date asc;

D.select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date DESC; 【×】

6.已有student表如下图所示,查询缴纳学费(tuition)的金额(不重复),下列选项正确的是( B )

在这里插入图片描述

  • A .select DISTINT tuition from student;
  • B . select DISTINCT tuition from student;
  • C . select DISTINCT ,tuition from student;
  • D .select tuition from student;

7.关于数据库的查询,下列描述不正确的是( B )

  • A .使用as关键字可以给指定字段起别名
  • B .使用limit关键字可以显示结果集 【如果结果集的记录很多,可以使用LIMIT关键字限定结果集的数量】
  • C .使用order by 关键字可以给结果集进行排序
  • D .使用distinct 关键字去除重复的记录

1.1.2 条件查询

8.已有student表如下图所示,查询小白和小灰的学生信息,下列选项正确的是( C )

在这里插入图片描述

  • A .select * from student where name=‘小白’ ,name=‘小灰’;
  • B .select * from student where name=‘小白’ and name=‘小灰’;
  • C .select * from student where name=‘小白’ or name=‘小灰’;
  • D .select * from student where name=‘小白’ & name=‘小灰’;

9.已有student表如下图所示,查询未缴纳宿舍费用的学生姓名,下列选项正确的是( C )

在这里插入图片描述

  • A .SELECT name from student where dorm_money is not null;
  • B .SELECT name from student where dorm_money = null;
  • C .SELECT name from student where dorm_money is null;
  • D .SELECT name from student where dorm_money == null;

10.已有student表如下图所示,查询姓名以 a—l开头以s结尾的学生信息,下列选项正确的是( C )

在这里插入图片描述

A .SELECT * from student where name REGEXP '^[a-l]s$';
B .SELECT * from student where name like '^[a-l]*s$';
C .SELECT * from student where name REGEXP '^[a-l]+s$';
D .SELECT * from student where name REGEXP '[a-l]+s$';

11.关于逻辑运算符,下列描述不正确的是( D )

  • A .表达式Not表示非关系
  • B . 表达式AND表示与关系
  • C .表达式OR表示或关系
  • D .表达式XOR表示或者关系 【XOR:异或关系】

12.已有student表如下图所示,查询总学费为除去4000和4500之外的学生信息,下列选项正确的是( A )

在这里插入图片描述

# 查询总学费为除去4000和4500之外的学生信息
SELECT * FROM t_student WHERE NOT tuition + IFNULL(dorm_money, 0) in (4000, 4500);

13.已有student表如下图所示,查询性别为女且姓名以赵或王开头的学生信息,下列选项正确的是( B )

在这里插入图片描述

# 查询性别为女且姓名以赵或王开头的学生信息
SELECT * FROM t_student WHERE sex='女' AND name LIKE '赵%' OR name LIKE '王%';

SELECT * FROM t_student WHERE (name LIKE '赵%' OR name LIKE '王%') AND sex='女';
A. select * from student WHERE name like'赵%'or name like '王%' and sex='女';
B. select * from student WHERE (name like'赵%'or name like '王%') and sex='女';
C. select * from student WHERE name like'赵%'and name like '王%';
D. select * from student WHERE name like'赵%' and name like '王%' and sex='女';

14.关于子句的执行顺序,下列正确的是( D )

  • A .FROM→WHERE→LIMIT→SELECT→ORDER BY
  • B .FROM→SELECT→WHERE→ORDER BY→LIMIT
  • C .FROM→WHERE→SELECT→LIMIT→ORDER BY
  • D .FROM→WHERE→SELECT→ORDER BY→LIMIT

二、多选题

三、练习题

3.1 基本查询

3.1.1 普通查询

# 明确要使用的逻辑空间
USE lsj2021_practice;

# 查询全部记录
SELECT * FROM t_emp;

# 查询指定记录
SELECT empno, ename, sal FROM t_emp;

# 使用列别名查询
SELECT 
	empno,
	sal*12 AS "income"
FROM t_emp;

# 查询员工表的前几条记录   代表从第5条到第10条数据
SELECT empno, ename FROM t_emp LIMIT 5,5;

3.1.2 条件查询

1、t_student 表

# 创建表

CREATE TABLE t_student(

	id INT UNSIGNED PRIMARY KEY,

	name VARCHAR(20) NOT NULL,

	sex ENUM("男", "女") NOT NULL,

	enrollment_date DATE NOT NULL,

	tel CHAR(11) NOT NULL,

	tuition DECIMAL(10, 2) DEFAULT NULL

);


# 查询
SELECT name, enrollment_date, tuition FROM t_student ORDER BY tuition ASC, enrollment_date ASC;

select enrollment_date,tuition from t_student ORDER BY tuition,enrollment_date asc;

select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date;

select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date asc;

select name,enrollment_date,tuition from t_student ORDER BY tuition, enrollment_date DESC;


# 查询缴纳学费(tuition)的金额(不重复)
SELECT DISTINCT tuition FROM t_student;

# 查询小白和小灰的学生信息
SELECT * FROM t_student WHERE name='小白' OR name='小灰';


# 添加一列数据
ALTER TABLE t_student
ADD dorm_money DECIMAL;

# 删除某一列数据
ALTER TABLE t_student
DROP dorm_money;

# 查询未缴纳宿舍费用的学生姓名
SELECT name, dorm_money FROM t_student WHERE dorm_money is null;


# 查询总学费在4000至4500的学生信息(包含5000,7000)
SELECT * FROM t_student WHERE tuition + IFNULL(dorm_money, 0) >= 5000 AND tuition + IFNULL(dorm_money, 0) <= 7000;

SELECT * FROM t_student WHERE tuition + IFNULL(dorm_money,0) BETWEEN 5000 AND 7000;


# 查询姓名以a—l开头以s结尾的学生信息
SELECT * FROM t_student WHERE name like '^[a-l]*s$';

SELECT * FROM t_student WHERE name REGEXP '^[a-l]+s$';

SELECT * FROM t_student WHERE name REGEXP '[a-l]+s$';


# 查询总学费为除去4000和4500之外的学生信息
SELECT * FROM t_student WHERE NOT tuition + IFNULL(dorm_money, 0) in (4000, 4500);


# 查询性别为女且姓名以赵或王开头的学生信息
SELECT * FROM t_student WHERE sex='女' AND name LIKE '赵%' OR name LIKE '王%';


SELECT * FROM t_student WHERE (name LIKE '赵%' OR name LIKE '王%') AND sex='女';

2、t_emp 表

# 明确要使用的逻辑空间
USE lsj2021_practice;


# 查询全部记录
SELECT * FROM t_emp;


# 查询指定记录
SELECT empno, ename, sal FROM t_emp;


# 使用列别名查询
SELECT 

	empno,

	sal*12 AS "income"

FROM t_emp;


# 查询员工表的前几条记录   代表从第5条到第10条数据
SELECT empno, ename FROM t_emp LIMIT 5,5;


# 数据集排序
SELECT empno, ename, sal, deptno FROM t_emp ORDER BY sal DESC;

SELECT ename, sal, hiredate FROM t_emp ORDER BY hiredate DESC;


# 多个排序字段
SELECT empno, ename, sal, hiredate FROM t_emp ORDER BY sal DESC, hiredate DESC;

SELECT deptno, ename, sal, hiredate FROM t_emp ORDER BY deptno ASC,  sal DESC;


# 取出工资排在前5位的数据
SELECT deptno, ename, deptno, sal, hiredate FROM t_emp ORDER BY sal DESC LIMIT 0, 5;


# 结果集中的重复记录
SELECT DISTINCT job FROM t_emp;


# 条件查询
SELECT deptno, empno, ename, sal FROM  t_emp WHERE deptno=10 AND sal >= 2000;

SELECT deptno, empno, ename, sal FROM  t_emp WHERE (deptno=10 OR deptno=20) AND sal >= 2000;


# 结合算数运算符查询:注意:普通数字+NULL = NULL   普通数字*NULL = NULL
# 遇到Null值转换为0,DATEDIFF():计算2个日期偏差多少天
SELECT NOW();   # 取到当前日期

# 查询使用算数运算符:部门编号:10,  年收入:大于等于15000,工龄:大于等于20年
SELECT  deptno, ename, sal, hiredate FROM t_emp WHERE deptno=10 AND (sal+IFNULL(comm, 0))*12 >= 15000 AND DATEDIFF(NOW(), hiredate)/365 >= 20;


# 查询使用比较运算符:部门是:10, 20, 30 , 入职时间:1985年以前, 职位不能是SALESMAN
SELECT deptno IN(10,20,30) FROM t_emp;
SELECT deptno, ename, job, hiredate, sal FROM t_emp WHERE deptno IN(10,20,30) AND hiredate < '1985-1-1' AND job != 'SALESMAN';


# mgr:上级员工编号

#查询使用比较运算符:佣金不为空的
SELECT deptno, ename, job, hiredate, sal, comm FROM t_emp WHERE comm is NOT NULL;

#查询使用比较运算符:佣金为空的
SELECT deptno, ename, job, hiredate, sal, comm FROM t_emp WHERE comm IS NULL AND sal BETWEEN 2000 AND 3000 AND ename LIKE "%S%" OR ename LIKE "_LAKE";

# 正则表达式
SELECT ename, sal, comm FROM t_emp WHERE comm is NOT NULL AND sal BETWEEN 1000 AND 3000 AND ename REGEXP "^[\\u4e00-\\u9fa5]{2,4}$";

#查询使用逻辑运算符
SELECT deptno, ename,sal FROM t_emp WHERE NOT deptno IN(10,20) XOR sal>=2000;

# 二进制按位运算
SELECT 3 & 7;
SELECT 3 | 7;

四、编程题


版权声明:本文为博主原创文章,未经博主允许不得转载。
【MK】Python全栈 阶段二:习题汇总 一:MySQL数据表的基本操作:表、字段、索引的增删改查 版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、练习题四、编程题 一、单选题 1.下列 A . B . C . D . 二、多选题 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ... 阅读详情

相关推荐

Matlab实战:用DQN算法让机器人学会自主避障(附完整代码)

本文详细介绍了如何使用Matlab实现DQN(深度Q网络)算法,使机器人在复杂环境中学会自主避障。通过环境建模、网络架构设计、奖励函数优化及实战调试,提供了完整的代码实现和训练策略,帮助开发者快速应用于机器人路径规划项目。

t8u9v0w1x的博客 232

【MK】Python全栈 阶段二:习题汇总 四:MySQL数据表的基本操作:INSERT、UPDATE、DELETE

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、项目介绍二、代码实现2.1 过程2.2 代码 一、项目介绍 二、代码实现 2.1 过程 2.2 代码 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 183

Ubuntu 22.04下GNU Radio 3.10全家桶编译避坑实录:从UHD、VOLK到WiFi收发模块gr-ieee802-11

本文详细介绍了在Ubuntu 22.04系统下编译安装GNU Radio 3.10全家桶的完整流程,包括UHD驱动、VOLK优化库以及WiFi信号处理模块gr-ieee802-11的集成。通过逐步指导解决版本兼容性和依赖问题,帮助研究人员快速搭建高效的软件定义无线电开发环境,特别适合使用USRP设备进行无线通信研究的开发者。

weixin_30825199的博客 447

【MK】Python全栈 阶段二:习题汇总 五:MySQL数据库的基本操作:基本函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题1.1 MySQL的综合应用1.2 MySQL与Python交互二、多选题三、练习题四、编程题 一、单选题 1.1 MySQL的综合应用 1.下列 A . B . C . D . 1.2 MySQL与Python交互 二、多选题 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 255

避坑指南:Unity新版InputSystem在移动端的5个常见问题及解决方案

本文针对Unity新版InputSystem在移动端开发中的常见问题,提供了5个关键解决方案,包括虚拟摇杆灵敏度调节、多点触控冲突处理、按钮反馈延迟优化、手势识别与陀螺仪数据融合以及Android/iOS平台差异处理。这些实战经验帮助开发者高效解决触控适配难题,提升移动游戏体验。

soda5的博客 405

python爬取《你好, 李焕英》豆瓣评论数据

# 导入工具包 import requests from bs4 import BeautifulSoup import time import pandas as pd import numpy as np # 请求头 headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36'} # =

python技巧分享 3456

【MK】Python全栈 阶段二:习题汇总 六:MySQL的综合应用:理论

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、项目介绍二、代码实现2.1 过程2.2 代码 一、项目介绍 二、代码实现 2.1 过程 2.2 代码 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 184

AI辅助游戏开发实战:Kimi K3提升Unity开发效率与代码质量

在游戏开发领域,有限状态机(FSM)是构建角色AI行为逻辑的核心设计模式,它通过定义明确的状态和转换条件,使游戏实体能够智能地响应环境变化。其原理在于将复杂的行为分解为离散的状态节点,并通过事件驱动状态切换,从而实现清晰、可维护的AI架构。这项技术的价值在于显著提升了游戏角色的行为真实感和开发效率,被广泛应用于NPC行为控制、角色动画管理、UI流程等场景。随着AI编程助手的兴起,开发者现在可以借助如Kimi K3这类工具,通过自然语言指令快速生成和优化FSM等复杂系统的代码框架,将更多精力投入到核心玩法与性

weixin_30430677的博客 407

【MK】Python全栈 阶段二:习题汇总 十:MySQL的综合应用:实践二:《新闻管理系统》数据库项目开发实战:Python+MySQL

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、项目介绍二、代码实现2.1 过程2.2 代码 一、项目介绍 二、代码实现 2.1 过程 2.2 代码 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 231

VTK-9.5.0 1D2D3DWidget实现灰度图+深度图+3D点云显示(可轻松集成到自己的项目)

VTK1D2D3DWidget是一个基于Qt和VTK开发的3D点云可视化工具,支持RGB和深度点云数据的显示与处理。主要功能包括点云加载、可视化、保存为PLY格式文件,以及背景颜色、点间隔、坐标轴显示等参数的自定义设置。该工具采用模块化设计,核心组件包括主窗口管理类、VTK渲染组件和自定义鼠标交互样式,依赖Qt5+和VTK9.5.0库实现跨平台支持。项目提供完整的源码和构建指南,适用于点云数据的快速展示与分析。

Qt历险记,专注Qt技术,三年医疗设备研发经验,1年机器视觉研发经验,半年柔性传感研发经验。 385

海康visionmaster开发笔记10-集成HALCON第三方算子到VM工具箱的方法

海康visionmaster开发笔记10-HALCON第三方算子到VM工具箱的方法

视觉人机器视觉的博客 4347

【Python】拼接MySQL常用语句

import pymysql class MK_sql (): """ 构建mySQL常见语句:增删改查排序 """ def __init__(self, table_name): self.table_name = table_name def mk_create(self, value: list): """ ...

m0_46416255的博客 1896

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Intv_AI_MK11 集成 MySQL 数据库:智能客服对话数据存储与查询实战

本文介绍了如何在星图GPU平台上自动化部署intv_ai_mk11 AI 对话机器人镜像,实现智能客服系统的MySQL数据库集成。通过该方案,企业可高效存储和查询海量对话数据,典型应用于电商客服场景,提升服务响应速度与数据分析能力。

weixin_35391606的博客 345

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

python拼接sql语句_【Python】拼接MySQL常用语句

import pymysqlclass MK_sql ():"""构建mySQL常见语句:增删改查排序"""def __init__(self, table_name):self.table_name = table_namedef mk_create(self, value: list):"""构建mySQL创建表语句@param value: 字段列表@return:"""if not isi...

weixin_39924486的博客 1368

Python 简单操作Mysql数据库模块详解

Python 简单操作Mysql数据库模块详解 准备工作 1. 安装好了mysql数据库 (此处博主用SQLyog查看) 2. 安装好python(此处博主用spyder完成py code) 3. 安装PyMysql(直接使用pip安装) 1 Python数据库图解流程 python与数据库的连接操作可简单描述如下: (1)connection()参数 与数据库连接代码如下,此...

王美的博客 612

物联网无线收发芯片选型指南:从射频参数到实战部署

物联网通信链路中,无线收发芯片是连接感知与网络的物理基石,决定了节点的通信距离、功耗与稳定性。理解射频参数如接收灵敏度、发射功率、调制方式及平均功耗模型,是评估芯片性能的关键。在实际应用中,Sub-1G与2.4G频段各有优劣,LoRa与FSK调制适应不同场景。从单点透传、星型汇聚到Mesh自组网与公网广域覆盖,芯片选型需围绕节点数量、现场遮挡、电池寿命等需求展开。链路预算与功耗估算能验证方案可行性,而天线布局、晶振匹配与并发控制等部署细节直接影响项目成败。本文以食用菌车间监控为例,完整走通芯片选型与硬件调试

weixin_34221775的博客 553

python 发送邮件附件很慢_基于Python实现自动慢查询分析,邮件自动发送

由两个程序文件组成,第一个程序实现慢查询分析,文件上传#!/usr/local/python27/bin/python2.7fromfabric.apiimport*fromfabric.context_managersimport*fromfabric.contrib.consoleimportconfirmimportsysimportosimporttimeimpor...

weixin_39612653的博客 413

intv_ai_mk11效果展示:中英混合输入(如‘用Python写一个fastapi demo’)的准确执行能力

本文介绍了如何在星图GPU平台上自动化部署intv_ai_mk11 AI对话机器人镜像,实现高效处理中英混合指令的能力。该镜像特别擅长执行编程任务,如根据'用Python写一个fastapi demo'等混合语言指令生成可运行代码,显著提升开发效率。

weixin_29025501的博客 547

Python 连接mysql

# -*- coding:utf-8 -*- import sys import pandas as pd from sqlalchemy import create_engine import MySQLdb import json reload(sys) sys.setdefaultencoding('utf-8') def find(database, t...

weixin_30402085的博客 70

基于Python实现自动慢查询分析,邮件自动发送

由两个程序文件组成,第一个程序实现慢查询分析,文件上传#!/usr/local/python27/bin/python2.7 fromfabric.apiimport* fromfabric.context_managersimport* fromfabric.contrib.consoleimportconfirm importsys importos...

weixin_33920401的博客 107

Python 之 pymysql增删改查Mysql数据库

表结构: 代码: #Author Kang import pymysql #连接方法 conn = pymysql.connect(host='10.3.152.35',port=3306,user='kang',passwd='123456',db='test') #创建当前游标 cursor = conn.cursor() #effect_row 为结果行数 effect_row =...

weixin_33754065的博客 170

python 比较时间 删除mysql数据

【代码】python 比较时间 删除mysql数据。

jxyk2007的专栏 485

Python爬取51jobs结尾之MySQL(4)

将前文数据放至MySQL数据库中 class Data_Transport(object): def __init__(self): """ 连接MySQL的qianc_job数据库 """ # 未加上charset='utf8' 出现报错latin-1' codec can't encode characters in...

风小憩 323

MySQL系类之SqlAlchemy-Python-Go

SqlAlchemy-python-MySQL类型对比MK语句类型对比使用 `代码:` MK 用法 语句 pthon对Mysql操作和使用ORM框架(SQLAlchemy) 类型对比 sqlalchemy Python 数据库类型 Go Integer int 整数(4字节) INT SmallInteger int取值范围小的整数(2字节) SMALLINT BigI...

cugbtang 278
上一篇: 【MK】Python全栈 阶段二:习题汇总 一:MySQL数据表的基本操作:表、字段、索引的增删改查
下一篇: 【MK】Python全栈 阶段二:习题汇总 三:MySQL数据表的基本操作:高级查询
InitialHeart2021
博客等级 码龄5年 49粉丝 182原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

InitialHeart2021

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值