• 欢迎访问VPS岛网站,国外VPS,国内VPS,国外服务器,国内服务器,服务器主机,测评及优惠码,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站 QQ群

mysql 常用函数

mysql技术 青衫解衣 16次浏览 已收录 0个评论

floor(x) 返回小于x的最大整数值

mysql> select * from t13;
+------+--------+----------+
| id   | name   | fraction |
+------+--------+----------+
|    1 | 李四   | 65.5     |
+------+--------+----------+
1 row in set (0.00 sec)
mysql> select fraction  from t13;
+----------+
| fraction |
+----------+
| 65.5     |
+----------+
1 row in set (0.00 sec)

#floor截取fraction值的整数部分.

mysql> select floor(fraction)  from t13;
+-----------------+
| floor(fraction) |
+-----------------+
|              65 |
+-----------------+
1 row in set (0.00 sec)

rand():返回0到1之间的随机数.

mysql> select rand();
+-------------------+
| rand()            |
+-------------------+
| 0.874798723379894 |
+-------------------+
1 row in set (0.00 sec)

返回5-10之间的随机数.

mysql> select rand()*5+5;
+-------------------+
| rand()*5+5        |
+-------------------+
| 6.166499062596354 |
+-------------------+
1 row in set (0.00 sec)
mysql> select rand()*5+5;
+-------------------+
| rand()*5+5        |
+-------------------+
| 7.710514615951585 |
+-------------------+
1 row in set (0.00 sec)

配合floor可以得到5-10之间的随机整数.

mysql> select floor(rand()*5+5);
+-------------------+
| floor(rand()*5+5) |
+-------------------+
|                 5 |
+-------------------+
1 row in set (0.00 sec)

mysql> select floor(rand()*5+5);
+-------------------+
| floor(rand()*5+5) |
+-------------------+
|                 7 |
+-------------------+
1 row in set (0.00 sec)

position获取指定字符串所在列的位置,从1开始计数.

mysql> create table t18 (
    -> email char(20)
    -> );
Query OK, 0 rows affected (0.02 sec)
mysql> insert into t18 values ("abc@163.com"),("12356@163.com");
Query OK, 2 rows affected (0.02 sec)
Records: 2  Duplicates: 0  Warnings: 0
mysql> select * from t18;
+---------------+
| email         |
+---------------+
| abc@163.com   |
| 12356@163.com |
+---------------+
2 rows in set (0.00 sec)

position使用的语法:

mysql> select position('@' in email) from t18;
+------------------------+
| position('@' in email) |
+------------------------+
|                      4 |
|                      6 |
+------------------------+
2 rows in set (0.00 sec)

left语法截取:

mysql> select left(email,position('@' in email)) from t18;
+------------------------------------+
| left(email,position('@' in email)) |
+------------------------------------+
| abc@                               |
| 12356@                             |
+------------------------------------+
2 rows in set (0.01 sec)

mysql> select left(email,position('@' in email)-1) from t18;
+--------------------------------------+
| left(email,position('@' in email)-1) |
+--------------------------------------+
| abc                                  |
| 12356                                |
+--------------------------------------+
2 rows in set (0.00 sec)

date_format:时间戳函数.

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2019-02-15 23:09:31 |
+---------------------+
1 row in set (0.00 sec)
mysql> select date_format(now(),'%Y%m');
+---------------------------+
| date_format(now(),'%Y%m') |
+---------------------------+
| 201902                    |
+---------------------------+
1 row in set (0.00 sec)
mysql> select date_format(now(),'%Y%m%d');
+-----------------------------+
| date_format(now(),'%Y%m%d') |
+-----------------------------+
| 20190215                    |
+-----------------------------+
1 row in set (0.00 sec)


VPS岛 的文章和资源来自互联网,仅作为参考资料,如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。丨 转载请注明mysql 常用函数
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址