MySQL数据库单表查询的示例

29次阅读
没有评论

共计 3152 个字符,预计需要花费 8 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍 MySQL 数据库单表查询的示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、简单查询

1.     Select 语句

Select [distinct] * | {字段名 1,字段名 2,字段名 3,。。。}

From 表名

[where 条件表达式 1][groupby 字段名 [having 条件表达式 2]][orderby 字段名 [asc|desc]][limit[offset] 记录数 ]

(1)   Distinct 是可选参数,用于剔除查询结果中重复的数据;

(2)   Group by 是可选参数,用于将查询结果按照指定字段进行分组;having 也是可选次参赛,用于对分组后的结果进行过滤

(3)   Order by 是可选参数,用于将查询结果按照指定字段进行排序,排序方式由参数 ASC 或 DESC 控制,如果不指定,则默认为升序排列(ASC)

(4)   Limit 是可选参数,用于限制查询结果的数量,limit 后面可以跟两个参数,第一个参数 offset 表示偏移量,如果偏移量为 0,则从查询结果的第一条记录开始,偏移量为 n 则从查询结果中的第 n + 1 条记录开始。如果不指定,则默认为 0. 第二个参数‘记录数’表示返回查询记录的条数。

2.     查询所有字段

(1)   在 select 语句中指定所有字段

MySQL 数据库单表查询的示例

(2)   在 select 语句中使用 * 通配符代替所有字段:查询结果只能按照字段在表中定义的顺序显示。

3.     查询指定字段

MySQL 数据库单表查询的示例

二、按条件查询

1.     带关系运算符的查询

MySQL 数据库单表查询的示例

2.     带 in 关键字的查询:in 关键字用于判断某个字段的值是否在指定集合中。

MySQL 数据库单表查询的示例MySQL 数据库单表查询的示例

3.     带 between and 关键字的查询:用于判断某个字段的值是否在指定的范围内。

MySQL 数据库单表查询的示例MySQL 数据库单表查询的示例

4.     空值查询

MySQL 数据库单表查询的示例

5.     带 distint 关键字的查询:过滤掉查询记录中重复的值

MySQL 数据库单表查询的示例

当 distinct 关键字作用于多个字段时,只有它后面指定的多个字段值都相同,才会被认为是重复记录。

6.     带 like 关键字的查询:like 关键字可以判断两个字符串是否相匹配。格式如下:

Select * | [{字段名 1,字段名 2,…} from 表名

Where 字段名 [not] like‘匹配字符串’;

(1)   百分号(%)通配符:匹配任意长度的字符串,包括空字符串

MySQL 数据库单表查询的示例MySQL 数据库单表查询的示例

可以使用多个 % 通配符,也可以和 not 一起使用

MySQL 数据库单表查询的示例

(2)   下划线(_)通配符:只能匹配单个字符,如果要匹配多个字符,需要使用多个下划线通配符,如果使用多个下划线匹配多个连续的字符则下划线之间不能有空格。如‘M_ _QL’中间有一个空格,只能匹配’My SQL’而不能匹配‘MySQL’。

MySQL 数据库单表查询的示例

(3)   使用百分号和下划线通配符进行查询操作:

注意:如果要匹配字符串中的百分好和下划线,就需要在铜牌字符串中使用‘\’对百分号和下划线进行转义,如’\%’匹配百分号字面值。

7.     带 and 关键字的多条件查询:使用 and 关键字可以连接两个或者多个查询条件,只有满足所有条件的记录才会被返回。每多加一个查询条件就多加一个 and 关键字。

MySQL 数据库单表查询的示例

MySQL 数据库单表查询的示例

8.     带 or 关键字的多条件查询:只要满足一个条件即返回记录。

MySQL 数据库单表查询的示例

9.     Or 和 and 关键字在一起使用的情况:and 的优先级高于 or, 应优先运算 and 两边的条件表达式,再运算 or 两边的条件表达式。

三、高级查询

1.     聚合函数:count(),sum(),avg(),max() 和 min()

(1)    count() 函数用来统计记录的条数:selectcount(*) from 表名

MySQL 数据库单表查询的示例

(2)    sum() 函数用于求出表中某个字段所有值的总和:select sum( 字段名) from 表名

MySQL 数据库单表查询的示例

(3)    avg() 函数用于求出某个字段所有值的平均值:select avg( 字段名) from 表名;

MySQL 数据库单表查询的示例

(4)    max() 函数是求最大值的函数,用于求出某个字段的最大值:select max( 字段名) from 表名。

MySQL 数据库单表查询的示例

(5)    min() 函数是求最小值的函数:selectmin( 字段名) from 表名

MySQL 数据库单表查询的示例

2.     对查询结果排序

Select 字段名 1,字段名 2,… from 表名 order by 字段名 1[ASC | DESC], 字段名 2[ASC | DESC]…

MySQL 数据库单表查询的示例MySQL 数据库单表查询的示例

3.     分组查询

Select 字段名 1,字段名 2,… from 表名 group by 字段名 1,字段名 2,… [having 条件表达式];

(1)   单独使用 group by 分组:查询结果安装字段中不同的值进行分类,查询结果只显示每个组中的一条记录。

MySQL 数据库单表查询的示例

(2)   Group by 和聚合函数一起使用

MySQL 数据库单表查询的示例

(3)   Group by 和 having 关键字一起使用

Having 关键字和 where 关键字的作用相同,都用于设置条件表达式对查询结果进行过滤,两者的区别在于 having 关键字后可以跟聚合函数,而 where 关键字不能。通常 having 关键字都和 group by 一起使用,用于对分组后的结果进行过滤。

4.     使用 LIMIT 限制查询结果的数量:指定查询结果从哪一条记录开始以及一共查询多少条信息。

Select 字段名 1,字段名 2,… from 表名 limit [offset,] 记录数

MySQL 数据库单表查询的示例

5.     函数(列表)

数学函数

函数名称

作用

Abs(x)

返回 x 的绝对值

Sqrt(x)

返回 x 的非负 2 次方根

Mod(x,y)

返回 x 被 y 除后的余数

Ceiling(x)

返回不小于 x 的最小整数

Floor(x)

返回不大于 x 的最大整数

Round(x,y)

对 x 进行四舍五入操作,小数点后保留 y 位

Runcate(x,y)

舍去 x 中小数点 y 位后面的数

Sign(x)

返回 x 的符号,-1,0 或 1

字符串函数

函数名称

作用

Length(str)

返回字符串 str 的长度

Concat(s1,s2,…)

返回一个或者多个字符串连接产生的新的字符串

Trim(str)

删除字符串两侧的空格

Replace(str,s1,s2)

使用字符串 s2 替换字符串 str 中所有的字符串 s1

Substring(str,n,len)

返回字符串 str 的子串,起始位置为 n, 长度为 len

Reverse(str)

返回字符串反转后的结果

Locate(s1,str)

返回子串 s1 在字符串 str 中的起始位置

日期和时间函数

函数名称

作用

Curdate()

获取系统当前日期

Curtime()

获取系统当前时间

Sysdate()

获取当前系统日期和时间

Time_to_sec()

返回将时间转换成秒的结果

Adddate()

执行日期的加运算

Subdate()

执行日期的减运算

Date_format()

格式化输出日期和时间值

条件判断函数

函数名称

作用

If(expr, v1, v2)

如果 expr 表达式为 true 返回 v1,否则返回 v2

Ifnull(v1,v2)

如果 v1 不为 null 返回 v1,否则返回 v2

Case expr when v1 then r1 [when v2 then r2…] [else rn] end

如果 expr 值等于 v1、v2 等,则返回对应位置 then 后面的结果,否则返回 else 后的结果 rn

加密函数

函数名称

作用

Md5(str)

对字符串 str 进行 MD5 加盟

Encode(str, pwd_str)

使用 pwd 作为密码加密字符串 str

Decode(str, pwd_str)

使用 pwd 作为密码解密字符串 str

(1)   Concat(str1,str2,…) 返回结果为连接参数产生的字符串,如果任何一个参数为 null,则返回值为 null.

MySQL 数据库单表查询的示例MySQL 数据库单表查询的示例

四、为表和字段取别名

1.     为表取别名:select * from 表名 [as] 别名;

如下例子,s.gender 表示 student 表的 gender 字段

MySQL 数据库单表查询的示例

2.     为字段取别名:select 字段名 [AS] 别名 [, 字段名 [as] 别名,…] from 表名;

MySQL 数据库单表查询的示例

以上是“MySQL 数据库单表查询的示例”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计3152字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)