MySQL学习笔记2_MySQL
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
热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

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

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

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

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

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

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

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

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