时间:2021-07-01 10:21:17 帮助过:9人阅读
Upper()可以将文本转换成大写。
表中列出了某些常用的文本处理函数。
SOUNDEX是一个将任何文本串转换为描述其语言表示的字母数字模式的算法。SOUNDEX考虑了类似的发音字符和音节, 使得能对串进行发音比较而不是字母比较。如下所示:
MariaDB [crashcourse]> SELECT cust_name, cust_contact FROM customers WHERE Soundex(cust_contact) = Soundex(‘Y Lie‘); +-------------+--------------+ | cust_name | cust_contact | +-------------+--------------+ | Coyote Inc. | Y Lee | +-------------+--------------+ 1 row in set (0.001 sec) MariaDB [crashcourse]>
因为Y.Lee和Y.Lie的发音相似, 所以他们的SOUNDEX值匹配。因此WHERE子句能正确的过滤出所需的数据。
日期和时间采用相应的数据类型和特殊的格式存储, 以便能快速和有效的排序或过滤, 并且节省物理存储空间
一般,应用程序不使用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取、统计和处理这些值。
一些常用的日期和时间处理函数
首先需要注意的是MySQL使用的日期格式。无论什么时候指定了一个日期, 不管是插入或是更新表值还是使用WHERE子句进行过滤。日期必须为格式yyy-mm-dd。
基本的日期比较很简单
MariaDB [crashcourse]> SELECT cust_id, order_num FROM orders WHERE order_date = ‘2005-09-01‘; +---------+-----------+ | cust_id | order_num | +---------+-----------+ | 10001 | 20005 | +---------+-----------+ 1 row in set (0.002 sec) MariaDB [crashcourse]>
但是使用"WHERE order_date = ‘2005-09-01‘"这种比较是不可靠的, 如果order_date的值为"order_date = ‘2005-09-0 11:30:05‘ "则不会被匹配出来。
解决办法是使用Date()函数, Date函数(order_date)指示MySQL仅提取列的日期部分, 更可靠的SELECT语句为:
MariaDB [crashcourse]> SELECT cust_id, order_num FROM orders WHERE Date(order_date) = ‘2005-09-01‘; +---------+-----------+ | cust_id | order_num | +---------+-----------+ | 10001 | 20005 | +---------+-----------+ 1 row in set (0.001 sec) MariaDB [crashcourse]>
还有一种日期比较的方法, 如果想检索出2005年9月下的所有订单。
方法一: 使用BETWEEN将2005-09-01和2005-09-30定义成一个要匹配的日期范围
MariaDB [crashcourse]> SELECT cust_id, order_num FROM orders WHERE Date(order_date) BETWEEN ‘2005-09-01‘ AND ‘2005-09-30‘; +---------+-----------+ | cust_id | order_num | +---------+-----------+ | 10001 | 20005 | | 10003 | 20006 | | 10004 | 20007 | +---------+-----------+ 3 rows in set (0.001 sec) MariaDB [crashcourse]>
方法二: 使用函数
MariaDB [crashcourse]> SELECT cust_id, order_num FROM orders WHERE Year(order_date)=2005 AND Month(order_date)=9; +---------+-----------+ | cust_id | order_num | +---------+-----------+ | 10001 | 20005 | | 10003 | 20006 | | 10004 | 20007 | +---------+-----------+ 3 rows in set (0.000 sec) MariaDB [crashcourse]>
数值处理函数仅处理数值数据,这些函数一般主要用于代数、三角或几何运算。
在主要的DMBS中, 数值函数是最一致最统一的函数。如下列举出常用的数值处理函数
MySQL基础之MySQL必知必会(十一)使用数据处理函数
标签:ras block 简单 定义 指示 alt name 统一 存储空间