python mysql查表_python进阶(十、mysql:单表查询)

3.mysql数据库

3.10 单表查询

3.10.1. 简单查询

查询在数据库中使用的频率是最高的:十次查询,一次增删改。

1)建表

2ca115885e12a40246b02c38b48803a2.png

2)插入数据

2f77cae836f299911b1b8bd655b6df26.png

3.10.1.1. 选择字段:select

select 字段名1,字段名2…… from 表名 where 条件;

26c57b1d37c0ae9b57a0090b8f2a7541.png

3.10.1.2. 字段重命名(别名):as

select 字段名1,字段名2 as 别名…… from 表名 where 条件;

1951a94853170096cbbdfa43724604e6.png

可以省略as,用空格代替

82896c936c90f138786d74b1c2250301.png

使用别名不会修改数据库中的字段名

3.10.1.3. 去重:distinct

select distinct 字段名 from 表名 where 条件;

15ebe47abd7ba947bc78817049a61452.png

联合去重

select distinct 字段名1, 字段名2…… from 表名 where 条件;

9fb86615af3aadfcd30e80b6c13bf177.png

3.10.1.4. 四则运算(+ - * /)

c4a4529c96c0e5236af8388bc72b10df.png

运算后重命名

ee69d07068ea9bb588c2c956e980fbdf.png

3.10.1.5. 拼接函数:concat(),拼接数据输出字符串

5412cbbf8bcae52e3bd8819789196656.png

b993f8ca71c782489ce457f4eed606f6.png

concat_ws(分隔符,字段1,字段2……)

b12fbfc78c013b35b0020f29f8daaa33.png

aec21d2c91d77b745b3db5b825789ac2.png

3.10.1.6. 判断:case...end

5fcbd8bf0763827b20c4ff58082a0a3e.png

3.10.2. where 约束

where作用:筛选所有符合条件的行

3.10.2.1. 比较运算符:> < >= <= <> !=

6c87ae2f13203f5a5aec0651135eb68e.png

3.10.2.2. 满足区间:between...and...

4f3a8ea77e9ed3e730f6472b494d1268.png

3.10.2.3. 成员判断:in()

51115d565e0c834a1c99f89f4617ddde.png

3.10.2.4. 模糊查询:like

1)%表示任意多字符

85bec83af14ee51f22482002979952e8.png

6dcebc4cc169482c7ef3e335330b869c.png

ac706a5569bc1f439582fb4879bb1f7f.png

2)_表示一个任意字符

72d6c41123e6a72c59c0dcfd435c7a87.png

3.10.2.5. 使用正则表达式模糊查询:regexp

1)“^xxx” 表示以“xxx”开始

1ee06f8726aa0bc437148511a21234b9.png

2)“xxx$” 表示以“x”结尾

0d158a55cbf580ccdaf6ebdfe8701f9e.png

3)“{n}” 重复n次

593087d3d2486e8a16d3dca44f0e48b9.png

3.10.2.6. 逻辑运算符:and or not

在多个条件直接可以使用逻辑运算符 and or not

运算优先级:not > and > or

40591b2475e165cfa7a5ce6a9934a3f1.png

81a5ab5d693e946a6e872878c3ae14ed.png

3.10.2.7. 判断是否为空:is null

151d6bae457cbfbbd65b137e2bf66d15.png

3.10.3. 分组:group by

分组group by

27b1d5675fb45fd2ac08b587bc48f6c8.png

3.10.4. 聚合:count、max、min、avg、sum

聚合函数聚合的是组的内容:COUNT()、MAX()、MIN()、AVG()、SUM()

没有使用group by分组,直接使用聚合函数,则把整张表作为一个分组。

1)count()根据分组计数

54ea22a411beaacd2a4c0946ce8839a4.png

793df983fcef7980ae7120d3ac000cbb.png

count(*)统计符合条件的行数

d52b8b7c460224362cabc71ed7b7600e.png

2)max()求最大值

c7faf56373d1962f26d0aa6f5f93e98b.png

3)min()求最小值

473bc6b850990616fead3fb7641bc1d8.png

4)avg()求平均值

f589bc30ed15be784a966691130ef251.png

5)sum()求平均值

5cc96133d90c1eb94712f383ca1f77fb.png

6)展示分组内某项数据的集合:GROUP_CONCAT()

只能展示,使用数据时无法分开取值

b83a2a3324d15e1c956592e5277a8a21.png

7)where 条件 + group by:对满足条件的数据,进行分组

e39c9d1f1aee35ab9f28ab461126a18c.png

注意:使用聚合时,只有分组和聚合数据是匹配的

显示其它字段时,显示内容和聚合数据并不匹配。

ca77d84f7949c1e73a926201fe1049ad.png

3.10.5. 过滤:having

1)执行优先级从高到低:where > group by > having

2)Where 发生在分组group by之前,因而Where中可以有任意字段,但是绝对不能使用聚合函数。

af8df27e03f30c1e24ff98496b79ed05.png

3)Having发生在分组group by之后,因而Having中可以使用分组的字段,无法直接取到其他字段,可以使用聚合函数

067bf2a1fd0d794582a84959e1586a2f.png

581ae6210f4d2586bc6a7aa193de4462.png

4)where和having联合使用

dcb0482631c4f654f9ff30ed2709f2ad.png

5)练习

(1)查询各岗位内包含的员工个数大于2的岗位名、岗位内包含员工名字、个数

0db5b1b5b4a001a76e205c308907e287.png

(2)查询各岗位平均薪资大于10000的岗位名、平均工资

f2f47c77a79627c46efb7b8eb9af0208.png

(3)查询各岗位平均薪资大于10000且小于20000的岗位名、平均工资

203178e020bc8f043706ae065eaa0044.png

3.10.6. 查询排序:order by

1)默认排序是从小到大

5145a3200ce20e86e0e7f3bacca83290.png

d4afed72f7cd1ce2220a8c22acf714ec.png

也可以用asc(升序关键字)从小到大排列

25d57730f9aa51c1486ca4c5446318e9.png

2)从大到小排序:desc(降序关键字)

f0798e3261c1ecb7dcf8ef76abb80595.png

cd4d75a407f890a2fa8c3f68cb76dc9a.png

3)组合排序(主要关键字在前)

order by 字段1,字段2:先按字段1排序,字段1相同时按字段2排序。也可使用desc降序。

e3f54e556bca0b0cb2395b780ce0cb5f.png

3.10.7. 限制查询记录数:limit

limit 数字:限制显示几条数据

d542d82555ee2b0277de5024cbf6ad55.png

65a74ed53f9e190e753a21546fd7eda0.png

limit m,n:从第m+1记录开始取,取n条记录;没有给定m时,m默认为0。

472935bd0277800a08a3e2c9624d1909.png

limit n offset m = limit m,n

535cd6636bce62cb4fd0da6e1a7eb128.png

3.10.8. 数据查询的执行顺序

1)from子句指定数据源

2)where子句基于指定的条件对记录进行筛选

3)group by子句将数据划分为多个分组,使用聚合函数进行计算

4)使用having子句筛选分组

5)使用select取出字段值

6)使用oredr by对select取出的字段值进行排序

7)使用limit限制记录数量

注意:having虽然执行在select之前,但执行having时解析了select,因此:

(1)select中的别名having可以使用,

(2)select中没有的字段having不能使用。

081381ff46169e1b90a8fcbcdf4a4b0b.png

501ddb5df3e5409e602f6cb425f8c6f9.png

170627149278fefa8e6907a340ed915e.png

重命名使用规则:

(1)where条件中不能使用select字段的重命名

(2)order by或者having可以使用select字段的重命名

3.10.9. select获取数据机制

1)首先通过from表名,找到表

2)然后过where,group by,having锁定数据行。

3)最后循环每一行,执行select语句,找到数据。

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

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

相关文章

python常见的数值运算符_第18 p,Python中各种常用的运算符,特别是增量运算符...

原标题&#xff1a;第18 p&#xff0c;Python中各种常用的运算符&#xff0c;特别是增量运算符大家好&#xff0c;我是杨数Tos&#xff0c;这是《从零基础到大神》系列课程的第18篇文章&#xff0c;第二阶段的课程&#xff1a;Python基础知识&#xff1a;Python中各种常用的运算…

python画害羞的表情_用Python把你的朋友变成表情包

一、项目说明在日常生活中&#xff0c;我们经常会存取一些朋友们的丑照&#xff0c;在这个项目中&#xff0c;我们以萌萌哒的熊猫头作为背景&#xff0c;然后试着在背景图上加入朋友们的照片。效果如下图所示&#xff1a;二、实现步骤导入朋友的照片(前景照片)&#xff1b;处理…

.net md5 java 偏移量_C# java MD5加密方不一致问题

说来惭愧&#xff0c;做开发几年了&#xff0c;一直在吸取&#xff0c;今天也写写自已关于技术的一点点理解&#xff0c;不正之处&#xff0c;请大家多多指点。由于之前开发的项目使用的是C#,用户信息使用的C#的MD5加密码方式&#xff0c;而现在需要切换到Java平台下&#xff0…

java dijkstra算法代码_[转载]Java实现dijkstra算法: 地图中任意起点寻找最佳路径...

最近在复习java&#xff0c;下学期要用&#xff0c;写这个练手. 技术较粗糙&#xff0c;见谅.代码里用的是这幅地图&#xff0c;根据实际情况更改&#xff0c;在addNode方法中这个是运行结果&#xff0c;起点和终点在 运行wrap(String qidian, String zhongdian) 时定义代码&a…

java xml opencv_Java中使用opencv

零、前言作为图像处理出身&#xff0c;不仅仅要会C图像处理、matlab图像处理、python图像处理、最起码也得会java图像处理&#xff0c;当然我最终还都用的是opencv这个机器视觉库了。今天简单介绍一下java中如何使用opencv。一、配置库(1)官网下载opencv&#xff0c;在opencv\b…

java实现table可编辑_动态渲染可编辑单元格的Table

一、问题描述问题是这样的&#xff0c;后台传了xArr [x1, x2,...,xn]和yArr [y1, y2, ..yn]两个数组&#xff0c;前端要渲染出表格并且可以填写每个单元格的值&#xff0c;然后按照一定数据结构保存并传给后台&#xff0c;并且再次获取这个数据结构和数组xArr、yArr可以自己渲…

java包裹邮费计算_GitHub - honghailiang/FreightSystem: 基于Java Swing编写的简易运费计算工具...

FreightSystem基于java Swing编写的运费计算系统初始化数据从excel中读取数据&#xff0c;转化为对象(只保存基础数据&#xff1a;序列号、始发站、目的站、省份、100kg以下(元/kg)、100kg以上(元/kg)、到货(元/kg)、自提(元/kg)、补贴里程、公路里程、单价(元/吨公里))并保存到…

java需求设计_JavaWeb期末设计---需求分析文档. stage1

影院活动管理系统—需求分析文档目录第2章 需求分析2.1 用户需求2.1.1 业务需求2.1.2 商业需求2.1.3 特殊需求2.2 可行性分析2.2.1 技术可行性2.2.2 经济可行性2.3 系统功能2.3.1 功能概述2.3.2 E-R图2.3.4 Domian logic2.3.5 系统框架图-------------------------------------…

selenium java po模式_selenium + java po模式

po模式大概介绍&#xff0c;大家也可以自己百度看看Page Object模式主要是将每个页面设计为一个类class&#xff0c;这个类包含页面中需要测试的元素(按钮、输入框、URL、标题等)和实际操作方法&#xff0c;这样在写测试用例时可以通过调用页面类的方法和属性来获取页面元素和操…

java基础语法实例教程_Java 基础语法

一个 Java 程序可以认为是一系列对象的集合&#xff0c;而这些对象通过调用彼此的方法来协同工作面向对象中的一些概念下表列出了 面向对象 编程中的一些概念名词说明对象对象是类的一个实例&#xff0c;有状态和行为。例如&#xff0c;一条狗是一个对象&#xff0c;它的状态有…

python3软件怎么使用_python3怎么使用pip

pip 是 Python 包管理工具&#xff0c;该工具提供了对Python 包的查找、下载、安装、卸载的功能。目前如果你在 python.org 下载最新版本的安装包&#xff0c;则是已经自带了该工具。Python 2.7.9 或 Python 3.4 以上版本都自带 pip 工具。pip 官网&#xff1a;https://pypi.o…

深度学习图像融合_基于深度学习的图像超分辨率最新进展与趋势【附PDF】

因PDF资源在微信公众号关注公众号&#xff1a;人工智能前沿讲习回复“超分辨”获取文章PDF1、主题简介图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题&#xff0c;在医疗图像分析、生物特征识别、视频监控与安全等实际场景中有着广泛的应用。随着深度学习技术的…

高通cpu排行_安卓手机芯片排行:麒麟990 5G仅排第三,980还输给了765G?

众所周知&#xff0c;在移动端芯片行业&#xff0c;高通多年来都保持着一种舍我其谁的劲头&#xff0c;但随着科技的不断发展&#xff0c;其他厂商也开辟了自己的新天地&#xff0c;截至目前&#xff0c;全球主流的智能手机搭载的处理器主要来自于华为海思、高通骁龙、三星、联…

keil4怎么移植其他人的程序_简单和你聊聊造血干细胞移植!

造血干细胞是个什么“鸟”&#xff1f;造血干细胞&#xff0c;人体血细胞的老祖宗。它的分裂方式也十分独特&#xff0c;由一个细胞分裂为两个细胞时&#xff0c;其中一个细胞会慢慢长大&#xff0c;增殖分化为红细胞、白细胞和血小板等等&#xff1b;另一个细胞仍然保持干细胞…

怎么在电脑上任意截屏_草地上打滚、墙上任意涂鸦,幼儿园让孩子“想怎么玩就怎么玩”...

(图为孩子们开心地在“山坡”上打滚。 学校供图)长江日报-长江网10月26日讯 10月26日&#xff0c;汉阳区玉龙幼儿园的孩子们冲上小山坡滑草&#xff0c;草地上打滚&#xff0c;滚筒里钻来钻去&#xff0c;墙上任意涂鸦&#xff0c;在梯子搭建的木桥上自由行走……孩子们自发地三…

pyaudio usb playback_苹果安卓手机充电器USB接口PSD源文件psd素材

分类&#xff1a;详情页类目&#xff1a;数码家电格式&#xff1a;psd体积&#xff1a;尺寸&#xff1a;790*12168编号&#xff1a;13182638软件&#xff1a; Photoshop CS6(.psd)颜色模式 : RGB图像类型&#xff1a;位图版权&#xff1a;独家版权LOGO/ 实景图/人物/字体/产品 …

horizon client 无法识别域_iText for Mac(OCR识别图中文字工具)

itext mac中文特别版是一款从图片中识别文字的OCR(光学字符识别)工具。通过截图、拖拽图片&#xff0c;即可以从扫描版的PDF等任意图片中识字&#xff0c;并且可以很好的解决摘抄和批注需求。而且itext mac版使用腾讯、Google 双引擎&#xff0c;识别效果惊人地准确。iText for…

mysql 操作表的例子,mysql中库和表的简单操作总结(附示例)

本篇文章给大家带来的内容是关于mysql中库和表的简单操作总结(附示例)&#xff0c;有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对你有所帮助。一. 库的操作1.创建数据库创建数据库:create database 库名 charset utf8; charset uft8 可选项1.2 数据…

.net 5 正式版_iOS14.1正式版和14.2 Beta 4测试版一同发布 附16张内置新壁纸下载

今天凌晨&#xff0c;苹果同时推送了 iOS 14.1 正式版 和 iOS 14.2 Beta 4 测试版 系统更新&#xff0c;对于正式版和开发者用户来说&#xff0c;今天均可以将手中的 iPhone 升级到最新的系统版本。iOS 14.1 正式版更新了什么&#xff1f;先来看下 iOS 14.1 正式版&#xff0c;…

自适应均衡器 matlab程序,基于lms自适应均衡器matlab仿真

基于lms自适应均衡器matlab仿真 毕 业 设 计 (2014 届) 题 目 一种基于 OpenCV 的摄像机标定方 法学 院 物理电气信息学院 专 业 电子信息工程 年 级 2010 学生学号 12010245348 学生姓名 李 鑫 指导教师 车 进 2014 年 5 月 6 日摘要摄像机标定是在机器视觉和工业测量等领域中…