MySql操作数据查询条件20211223
# SELECT 数据查询(二)
## 对查询结果排序 ORDER BY
ORDER BY 关键字主要用来将查询结果中的数据按照一定的顺序进行排序
1. 语法: - `order by <字段名> [asc|desc]`
- 说明 asc 按照升序排序【默认】, desc 按照降序排序
2. 注意:
- ORDER BY 关键字后可以跟子查询 - 当排序的字段中存在空值时,ORDER BY 会将该空值作为最小值来对待
- 当排序的字段中存在空值时,ORDER BY 会将该空值作为最小值来对待查询数据按字母升序进行排序(A Z),但数据的排序并不仅限于此,还可以使用 ORDER BY 中的 DESC 对查询结果进行降序排序(Z A)。 mysql> SELECT * FROM tb_students_info ORDER BY height; mysql> SELECT name,height FROM tb_students_info ORDER BY height,name; mysql> SELECT name,height FROM tb_student_info ORDER BY height DESC,name ASC;
## 条件查询数据 WHERE
如果需要有条件的从数据表中查询数据,可以使用 WHERE 关键字来指定查询条件。
1. 语法 - `WHERE conditons`
- 带比较运算符和逻辑运算符的查询条件
- 带 BETWEEN AND 关键字的查询条件
- 带 IS NULL 关键字的查询条件
- 带 IN 关键字的查询条件 - 带 LIKE 关键字的查询条件
### 单条件查询 mysql> SELECT name,height FROM tb_students_info -> WHERE height=170; mysql> SELECT name,age FROM tb_students_info -> WHERE age<22;
### 多条件查询
在 WHERE 关键词后可以有多个查询条件,这样能够使查询结果更加精确。
多个查询条件时用逻辑运算符 `AND(&&)、OR(||)` 或 `XOR` 隔开。
1. AND :记录 满足所有条件,才会被查询出结果
2. OR : 记录 满足任意一个查询条件,才会被查询出结果
3. XOR : 记录 满足其中一个条件,并且不满足另外一个条件是,才会被查询出结果 mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 AND height>=175; mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 OR height>=175; mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 XOR height>=175
>OR、AND 和 XOR 可以一起使用,但是在使用时要注意运算符的优先级。
http://c.biancheng.net/view/7399.html
### 模糊查询 LIKE [新知识 4me]
1. 语法:
- `[NOT]LIKE`
- NOT :可选参数,字段中的内容与指定的字符串不匹配时满足条件。
- 字符串:指定用来匹配的字符串。"字符串"可以是一个很完整的字符串,也可以包含通配符。
LIKE 关键字支持百分号` % `和下划线` _ `通配符。
#### 带有"%"通配符的查询
"%"是 MySQL 中最常用的通配符,它能代表 **任何长度的字符串** ,字符串的长度可以为 0。
例如,a%b表示以字母 a 开头,以字母 b 结尾的任意长度的字符串。该字符串可以代表 ab、acb、accb、accrb 等字符串。 mysql> SELECT name FROM tb_students_info -> WHERE name LIKE "T%"; mysql> SELECT NAME FROM tb_students_info -> WHERE NAME NOT LIKE "T%" mysql> SELECT name FROM tb_students_info -> WHERE name LIKE "%e%";
注意:匹配的字符串必须加 *单引号* 或 *双引号* 。
#### 带有"_"通配符的查询
"_"只能代表单个字符,字符的长度不能为 0。 例如,a_b可以代表 acb、adb、aub 等字符串。 mysql> SELECT name FROM tb_students_info -> WHERE name LIKE "____y";
#### LIKE 区分大小写(默认不区分)
默认情况下,LIKE 关键字匹配字符的时候是 不 区分大小写的。如果需要 可以加入`BINARY`关键字 mysql> SELECT name FROM tb_students_info WHERE name LIKE "t%"; mysql> SELECT name FROM tb_students_info WHERE name LIKE BINARY "t%";
#### 使用通配符的注意事项和技巧
1. 注意事项:
- 注意大小写。MySQL 默认是不区分大小写的。如果区分大小写,像"Tom"这样的数据就不能被"t%"所匹配到。
- 注意尾部的空格 尾部空格会干扰通配符的匹配。例如,"T% "就不能匹配到"Tom"。
- 注意NULL。"%"通配符可以到匹配任意字符,但是不能匹配 NULL。也就是说 "%"匹配不到 tb_students_info 数据表中值为 NULL 的记录。
2. 使用技巧:
- 不要过度使用通配符,如果其它操作符能达到相同的目的,应该使用其它操作符。因为 MySQL 对通配符的处理一般会比其他操作符花费更长的时间。
- 在确定使用通配符后,除非绝对有必要,否则不要把它们用在字符串的开始处。把通配符置于搜索模式的开始处,搜索起来是最慢的。
- 仔细注意通配符的位置。如果放错地方,可能不会返回想要的数据。 ** *拓展* ** 如果查询内容中包含通配符,可以使用""转义符。 mysql> SELECT NAME FROM test.`tb_students_info` WHERE NAME LIKE "%%";
*** 2021-12-23 今天先学到这里 明天继续 MySql 的查询 学习
南财研选快讯丨万联证券3nm芯片即将量产,有利于提振大众的消费意愿和信心南方财经4月19日电,万联证券认为,在集成电路板块,台积电决定今年量产第二版3nm制程N3B,并于今年8月份在新竹12厂研发中心第八期工厂及南科18厂P5厂同步生产。新制程推出,有
红米,彻底关闭应用,禁止软件自启动相信很多小伙伴,在使用安卓机的过程中,都遇到类似情况。每次已经从任务栏关闭,或者加速清理掉任务了,可是部分应用却仍在系统后台运行。一方面后台运行,占用了手机运行内存,另一方面让手机
游戏企业申请的AI医疗软件获批一家游戏公司申请国家药品监督管理局资格认证成功了!第一财经了解到,上海游戏公司波克城市与柯来视上海市首家市级公立康复医院同济大学附属养志康复医院(上海市阳光康复中心)微脉及多位眼科
电催化去除水中硝酸盐研究获新进展近期,中科院合肥物质科学研究院固体所纳米材料与器件技术研究部科研人员在电催化去除水中硝酸盐研究方面取得新进展,相关研究结果发表在化学通讯期刊上。由于工农业快速发展,水体硝酸盐污染问
谷歌介入俄乌冲突,战事骤然升级!日元暴跌,土耳其意外出兵,17亿人将陷入危机?前景再度黯淡起来!本周一,这个世界发生的三件大事可能正在产生负面影响。一是,乌克兰总参谋部17日称,俄军使用图22M3战略轰炸机,对马里乌波尔乌军阵地进行了攻击。这是俄乌局势升级的
十四五期间河北新建公用充电桩3。4万个近日,河北省发展改革委印发关于加快提升充电基础设施服务保障能力的实施意见,聚焦解决全省充电基础设施建设存在的突出问题,全面提升充电服务保障能力,支撑新能源汽车产业高质量发展,助力实
CIM的这些基本知识你真的知道吗?CIM的理念CIM基本理念总结为依托先进技术面向具体需求融合动态信息描述实体单元支撑各类应用。首先要依托于对BIMGISIOT技术的透彻理解和深度应用,并与云计算大数据等技术充分融
进一步促进乡村振兴,包容性创业需补齐短板作者傅晋华(中国科学技术发展战略研究院研究员)观点热搜我国脱贫攻坚取得胜利后,我国三农工作重心转向全面推进乡村振兴。要做好巩固拓展脱贫攻坚成果同乡村振兴有效衔接,探索促进脱贫地区乡
比特币是否能变成一种储备货币?比特币越来越多地被当作一种储备数字货币。一家加密货币平台希望持有价值100亿美元的比特币为自己稳定币背书。稳定币是一批不断增长的加密货币,它旨在减少价格变化,通常由美元储备背书。这
QtD指针和Q指针及使用阅读Qt的源代码的时候,我们经常看QDQQQDECLAREPRIVATEQDECLAREPUBLIC这几个宏,这几个宏是干什么用的呢?其实这几个宏就是实现D指针和Q指针的宏,D指针
谷歌开放俄战略要地高清卫星图,都能查看秘密试验场谷歌地图开放俄罗斯所有战略要地的高像素卫星图像谷歌地图服务18日开始以最大分辨率提供俄罗斯所有军事和战略设施的卫星图像。目前,包括各种洲际弹道导弹发射井指挥所秘密试验场等在内的俄战