首页 数据库 mysql教程 MySQL学习笔记2_MySQL

MySQL学习笔记2_MySQL

Jun 01, 2016 pm 01:26 PM
中文 关键字 字符串 数据库

bitsCN.com 数据查询 在查询数据库中的数据时,如果数据中涉及中文字符串,有可能在输出时会出现乱码,那么最后在执行查询操作之前,通过set names语句设置其编码格式,然后在输出中文字符串就不会出现乱码了。带IN关键字的查询
格式:SELECT * FROM 表名 WHERE 条件 [NOT] IN (元素1,元素2, 元素3……,元素n);带BETWEEN AND 的范围查询
格式:SELECT * FROM 表名 WHERE 条件 [NOT] BETWEEN 取值1 AND 取值2;使用DISTINCT关键字去除结果中的重复行
格式:select distinct 字段名 from 表名;单独使用GROUP BY关键字,查询结果只显示每组的一条记录。使用GROUP BY关键字和GROUP_CONCAT()函数查询,可以将每个组中的所有字段值都显示出来。聚合函数查询 COUNT()函数,对于除“*”以外的任何参数,返回所选集合中非NULL值的行的数目;对于参数“*”,返回选择集合中所有行的数目,包含NULL值的行。没有WHERE子句的COUNT(*)是经过内部优化的,能够快速地返回所有的记录总数。SUM()函数可以求出表中某个字段取值的总和。AVG()函数可以求出表中某个字段取值的平均值。连接查询
内连接查询
内连接是最普遍的连接类型,而且是最匀称的,因为它们要求构成连接的每一部分的每个表的匹配,不匹配的行将被排除。
内连接的最常见的例子是相等连接,也就是连接后的表中的某个字段与每个表中的都相同。这种情况下,最后的结果集只包含参加连接的表中与指定字段相符的行。外连接查询
外连接是指使用OUTER JOIN关键字将两个表连接起来。外连接生成的结果集不仅包含符合连接条件的行数据,而且还包括左表(左外连接时的表)、右表(右外连接时的表)或两边连接表(全外连接时的表)中所有的数据行。语法格式如下:
SELECT 字段名称 FROM 表名1 LEFT|RIGHT JOIN 表名2 ON 表名1.字段名1=表名2.属性名2;
外连接分为左外连接(LEFT JOIN)、右外连接(RIGHT JOIN)和全外连接3种类型。 左外连接(LEFT JOIN)是指将左表中的所有数据分别与右表中的每条数据进行连接组合,返回的结果除内连接的数据外,还包括左表中不符合条件的数据,并在右表的相应列中添加NULL值。
右外连接(RIGHT JOIN)是指将右表中的所有数据分别与左表中的每条数据进行连接组合,返回的结果除内连接的数据外,还包括右表中不符合条件的数据,并在左表的相应列中添加NULL。子查询 带EXISTS关键字的 子查询,返回结果值为true或者false。合并结果查询 UNION关键字是将所有的查询结果合并到一起,然后去除相同记录;而UNION ALL关键字则只是简单的将结果合并到一起。定义表和字段的别名 直接在表名后添加一个别名,在之后的操作中即可使用别名;字段取别名的基本形式:字段名 [AS] 别名使用正则表达式查询 正则表达式是用某种模式去匹配一类字符串的一个方式。正则表达式的查询能力比通配字符的查询能力更强大,而且更加的灵活。基本形式:字段名 REGEXP '匹配方式';

正则表达式的模式字符:

模式字符

含义

应用举例

^

匹配以特定字符或字符串开头的记录

使用“^”表达式查询tb_book表中books字段以字母php开头的记录,语句如下:

select books from tb_book where books REGEXP '^php';

$

匹配以特定符或字符串结尾的记录

使用“$”表达式查询tb_book表中books字段以“模块”结尾的记录,语句如下:

select books from tb_book where books REGEXP '模块$';

.

匹配字符串的任意一个字符,包括回车和换行

使用“.”表达式来查询tb_book表中books字段中包含P字符的记录,语句如下:

select books from tb_book where books REGEXP 'P.';

[字符集合]

匹配“字符集合”中的任意一个字符

使用“[]”表达式来查询tb_book表中books字段中包含PCA字符的记录,语句如下:

select books from tb_book where books REGEXP '[PCA]';

[^字符集合]

匹配除“字符集合”以外的任意一个字符

查询tb_program表中talk字段值中包含cz字母以外的记录,语句如下:

select talk from tb_program where talk regexp '[^c-z]';

S1|S2|S3

匹配S1、S2和S3中的任意一个字符串

查询tb_books表中books字段中包含php、c或者java字符中任意一个字符的记录,语句如下:

select books from tb_books where books regexp 'php|c|java';

*

匹配多个该符号之前的字符,包括0和1个

使用“*”表达式查询tb_book表中books字段中A字符前出现过J字符的记录,语句如下:

select books from tb_book where books regexp 'J*A';

+

匹配多个该符号之前的字符,包括1个

使用“+”表达式来查询tb_book表中books字段中A字符前面至少出现过一个J字符,语句如下:

select books from tb_book where books regexp 'J+A';

字符串{N}

匹配字符串出现N次

使用{N表达式查询tb_book表中books字段中连续出现3次a字符的记录,语句如下:

select books from tb_book where books regexp 'a{3}';

字符串{M,N}

匹配字符串出现至少M次,最多N次

使用{M,N}表达式查询tb_book表中books字段中最少出现2次,最多出现4次a字符的记录,语句如下:

select books from tb_book where books regexp 'a{2,4}';

这里的正则表达式与Java语言、PHP语言等编程语言中的正则表达式基本一致。

bitsCN.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1665
14
CakePHP 教程
1424
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 Jul 18, 2024 am 05:48 AM

苹果公司最新发布的iOS18、iPadOS18以及macOSSequoia系统为Photos应用增添了一项重要功能,旨在帮助用户轻松恢复因各种原因丢失或损坏的照片和视频。这项新功能在Photos应用的"工具"部分引入了一个名为"已恢复"的相册,当用户设备中存在未纳入其照片库的图片或视频时,该相册将自动显示。"已恢复"相册的出现为因数据库损坏、相机应用未正确保存至照片库或第三方应用管理照片库时照片和视频丢失提供了解决方案。用户只需简单几步

Hibernate 如何实现多态映射? Hibernate 如何实现多态映射? Apr 17, 2024 pm 12:09 PM

Hibernate多态映射可映射继承类到数据库,提供以下映射类型:joined-subclass:为子类创建单独表,包含父类所有列。table-per-class:为子类创建单独表,仅包含子类特有列。union-subclass:类似joined-subclass,但父类表联合所有子类列。

如何在PHP中处理数据库连接错误 如何在PHP中处理数据库连接错误 Jun 05, 2024 pm 02:16 PM

PHP中处理数据库连接报错,可以使用以下步骤:使用mysqli_connect_errno()获取错误代码。使用mysqli_connect_error()获取错误消息。通过捕获并记录这些错误信息,可以轻松识别并解决数据库连接问题,确保应用程序的顺畅运行。

在PHP中使用MySQLi建立数据库连接的详尽教程 在PHP中使用MySQLi建立数据库连接的详尽教程 Jun 04, 2024 pm 01:42 PM

如何在PHP中使用MySQLi建立数据库连接:包含MySQLi扩展(require_once)创建连接函数(functionconnect_to_db)调用连接函数($conn=connect_to_db())执行查询($result=$conn->query())关闭连接($conn->close())

如何在 Golang 中使用数据库回调函数? 如何在 Golang 中使用数据库回调函数? Jun 03, 2024 pm 02:20 PM

在Golang中使用数据库回调函数可以实现:在指定数据库操作完成后执行自定义代码。通过单独的函数添加自定义行为,无需编写额外代码。回调函数可用于插入、更新、删除和查询操作。必须使用sql.Exec、sql.QueryRow或sql.Query函数才能使用回调函数。

如何在 Golang 中将 JSON 数据保存到数据库中? 如何在 Golang 中将 JSON 数据保存到数据库中? Jun 06, 2024 am 11:24 AM

可以通过使用gjson库或json.Unmarshal函数将JSON数据保存到MySQL数据库中。gjson库提供了方便的方法来解析JSON字段,而json.Unmarshal函数需要一个目标类型指针来解组JSON数据。这两种方法都需要准备SQL语句和执行插入操作来将数据持久化到数据库中。

PHP与不同数据库的连接:MySQL、PostgreSQL、Oracle和更多 PHP与不同数据库的连接:MySQL、PostgreSQL、Oracle和更多 Jun 01, 2024 pm 03:02 PM

PHP连接数据库指南:MySQL:安装MySQLi扩展,创建连接(servername、username、password、dbname)。PostgreSQL:安装PgSQL扩展,创建连接(host、dbname、user、password)。Oracle:安装OracleOCI8扩展,创建连接(servername、username、password)。实战案例:获取MySQL数据、PostgreSQL查询、OracleOCI8更新记录。

如何使用C++处理数据库连接和操作? 如何使用C++处理数据库连接和操作? Jun 01, 2024 pm 07:24 PM

在C++中使用DataAccessObjects(DAO)库连接和操作数据库,包括建立数据库连接、执行SQL查询、插入新记录和更新现有记录。具体步骤为:1.包含必要的库语句;2.打开数据库文件;3.创建Recordset对象执行SQL查询或操作数据;4.遍历结果或按照具体需求更新记录。

See all articles