MySQL数据处理函数(20)

「这是我参与11月更文挑战的第20天,活动详情查看:2021最后一次更文挑战

大多数SQL实现支持以下类型的函数。 1.文本函数。 2.数值函数。 3.数值函数。 4.日期和时间函数。

文本处理函数

前面有用过 RTrim()函数用来去除列值右边的空格,下面一个例子用Upper()函数:

select vend_name,Upper(vend_name) as vend_name_upcase
from vendors
order by vend_name;
复制代码

输出如下:

image.png

Upper()将文本转换为大写.常见的文本处理函数如下:

image.png

日期和时间处理函数

一般,应用程序不使用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取、统计和处理这些值。

进行过滤时,需要注意的是MySQL使用的日期格式。无论你什么时候指定一个日期,不管是插入或更新表值还是用WHERE子句进行过滤,日期必须为格式yyyy-mm-dd。因此,2005年9月1日,给出为2005-09-01。虽然其他的日期格式可能也行,但这是首选的日期格式,因为它排除了多义性(如,04/05/06是2006年5月4日或2006年4月5日或2004年5月6日或……)。

select cust_id,order_num from orders
where order_date = '2005-09-01';
复制代码

输出为:

image.png

如果所选日期包含具体时间,使用Date()函数。Date(order_date)指示MySQL仅提取列的日期部分。

例如

select cust_id,order_num from orders
where Date(order_date) = '2005-09-01';
复制代码

如果你想检索出2005年9月下的所有订单,怎么办?简单的相等测试不行,因为它也要匹配月份中的天数。有几种解决办法,其中之一如下所示:

select cust_id,order_num from orders
where Date(order_date) between '2005-09-01' and '2005-09-30';
复制代码

输出如下:

image.png BETWEEN操作符用来把2005-09-01和2005-09-30定义为一个要匹配的日期范围。

数值处理函数

数值处理函数仅处理数值数据。这些函数一般主要用于代数、三角或几何运算,因此没有串或日期——时间处理函数的使用那么频繁。

image.png

猜你喜欢

转载自juejin.im/post/7035060961773879332