加入收藏 | 设为首页 | 会员中心 | 我要投稿 大连站长网 (https://www.0411zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中的寻常函数有哪些

发布时间:2022-02-17 15:27:45 所属栏目:MySql教程 来源:互联网
导读:小编给大家分享一下MySQL中的常用函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在upda
       小编给大家分享一下MySQL中的常用函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
 
      在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update、delete语句中。
 
       常用的函数有:
 
1. 字符串函数;主要用于处理字符串。
 
2. 数值函数;主要用于处理数字。
 
3. 日期和时间函数;主要用于处理日期和事件。
 
4. 系统信息函数;获取系统信息。
 
1. 使用字符串函数:
 
虽然每种数据库都支持SQL,但是每种数据库拥有各自所支持的函数。
 
1.1 合并字符串函数concat() 和 concat_ws():
 
在MySQL中可以通过函数concat()和concat_ws()将传入的参数连接成为一个字符串。
 
mysql> select concat('my','s','ql');
+-----------------------+
| concat('my','s','ql') |
+-----------------------+
| mysql |
+-----------------------+
1 row in set (0.00 sec)
mysql> select concat('my','s','ql',null);
+----------------------------+
| concat('my','s','ql',null) |
+----------------------------+
| NULL |
+----------------------------+
1 row in set (0.00 sec)
mysql> select concat(curdate(), 12.2);
+-------------------------+
| concat(curdate(), 12.2) |
+-------------------------+
| 2016-08-2512.2 |
+-------------------------+
1 row in set (0.00 sec)
//说明:将当前时间和数值12.2合并。即concat()函数不仅可以接受字符串参数,而且还可以接受其他类型参数。
concat_ws()的定义:
 
concat_ws(sep,s1,s2,...sn)
//该函数与concat()相比,多了一个表示分隔符的seq参数,不仅将传入的其他参数连接起来,而且还会通过分隔符将各个字符串分割开来。
//分隔符可以是一个字符串,也可以是其他参数。如果分割符为null,则返回结果为null。函数会忽略任何分割符后的参数null.
示例:
 
mysql> select concat_ws('-','020','87658907');
+---------------------------------+
| concat_ws('-','020','87658907') |
+---------------------------------+
| 020-87658907 |
+---------------------------------+
1 row in set (0.00 sec)
mysql> select concat_ws(null,'020','87658907');
+----------------------------------+
| concat_ws(null,'020','87658907') |
+----------------------------------+
| NULL |
+----------------------------------+
1 row in set (0.00 sec)
//当分隔符为null时,则返回结果为null
mysql> select concat_ws('-','020',null,'87658907');
+--------------------------------------+
| concat_ws('-','020',null,'87658907') |
+--------------------------------------+
| 020-87658907 |
+--------------------------------------+
1 row in set (0.00 sec)
//不是第一个参数的null将被忽略
1.2 比较字符串大小函数strcmp():
 
strcmp()定义为:
 
strcmp(str1,str2);
//如果参数str1大于str2,返回1;如果str1小于str2,则返回-1;如果str1等于str2,则返回0;
示例:
 
mysql> select strcmp('abc','abd'),strcmp('abc','abc'),strcmp('abc','abb');
+---------------------+---------------------+---------------------+
| strcmp('abc','abd') | strcmp('abc','abc') | strcmp('abc','abb') |
+---------------------+---------------------+---------------------+
| -1 | 0 | 1 |
+---------------------+---------------------+---------------------+
1 row in set (0.00 sec)

(编辑:大连站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!