MySQL中的常用函数

在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update、delete语句中。

常用的函数有:

1. 字符串函数;主要用于处理字符串。

2. 数值函数;主要用于处理数字。

3. 日期和时间函数;主要用于处理日期和事件。

4. 系统信息函数;获取系统信息。

1. 使用字符串函数:

虽然每种数据库都支持SQL,但是每种数据库拥有各自所支持的函数。

1.1 合并字符串函数concat() 和 concat_ws():

在MySQL中可以通过函数concat()和concat_ws()将传入的参数连接成为一个字符串。

语法定义为:

concat(s1, s2,...sn)
//该函数会将传入的参数连接起来返回合并的字符串类型的数据。如果其中一个参数为null,则返回值为null.

示例:

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)

1.3 获取字符串长度函数length()和字符数函数char_length():

length()的定义如下:

length(str)

char_length(str)的定义如下:

char_length(str)

示例:

mysql> select length('mysql'),length('汉字'),char_length('mysql'),char_length('汉字');
+-----------------+----------------+----------------------+---------------------+
| length('mysql') | length('汉字') | char_length('mysql') | char_length('汉字') |
+-----------------+----------------+----------------------+---------------------+
| 5 | 4 | 5 | 4 |
+-----------------+----------------+----------------------+---------------------+
1 row in set, 2 warnings (0.00 sec)
//字符串‘MySQL'共有5个字符,但是占6个字节空间。这是因为每个字符串都是以\0结束。两个函数都是获取字符串的字符数而不是所占空间大小。

1.4 字母的大小写转换upper()和lower():

字母大小转换函数:upper(s); ucase(s);
字母小写转换函数:lower(s); lcase(s);

示例:

mysql> select upper('mysql'),ucase('mYsql'),lower('MYSQL'),lcase('MYsql');
+----------------+----------------+----------------+----------------+
| upper('mysql') | ucase('mYsql') | lower('MYSQL') | lcase('MYsql') |
+----------------+----------------+----------------+----------------+
| MYSQL | MYSQL | mysql | mysql |
+----------------+----------------+----------------+----------------+
1 row in set (0.00 sec)

1.5 查找字符串:

mysql中提供了丰富的函数去查找字符串的位置。分别有find_in_set()函数、field()函数、locate()函数、position()函数和instr()函数。同时还提供了查找指定位置的字符串的函数elt()。

1.5.1 返回字符串位置的find_in_set()函数:

函数定义为:

find_in_set(str1,str2)
//会返回在字符串str2中与str1相匹配的字符串的位置,参数str2字符串中将包含若干个用逗号隔开的字符串。

示例:

mysql> select find_in_set('mysql','oracle,mysql,db2');
+-----------------------------------------+
| find_in_set('mysql','oracle,mysql,db2') |
+-----------------------------------------+
| 2 |
+-----------------------------------------+
1 row in set (0.00 sec)

1.5.2 返回指定字符串位置的field()函数:

函数定义为:

filed(str,str1,str2...)
//返回第一个与字符串str匹配的字符串的位置。

示例:

mysql> select field('mysql','oracle','db2','redis','mysql');
+-----------------------------------------------+
| field('mysql','oracle','db2','redis','mysql') |
+-----------------------------------------------+
| 4 |
+-----------------------------------------------+
1 row in set (0.00 sec)

1.5.3 返回子字符串相匹配的开始位置:

mysql中有三个函数可以获取子字符串相匹配的开始位置,分别是locate()、position()、instr()函数。

locate(str1,str) //返回参数str中字符串str1的开始位置

position(str1 in str) 和 instr(str,str1)

示例:

mysql> select locate('sql','mysql'),position('sql' in 'mysql'),instr('mysql','sql');
+-----------------------+----------------------------+----------------------+
| locate('sql','mysql') | position('sql' in 'mysql') | instr('mysql','sql') |
+-----------------------+----------------------------+----------------------+
| 3 | 3 | 3 |
+-----------------------+----------------------------+----------------------+
1 row in set (0.00 sec)

1.5.4 返回指定位置的字符串的elt()函数:

函数语法为:

elt(n,str1,str2...);

示例:

mysql> select elt(1,'mysql','db2','oracle');
+-------------------------------+
| elt(1,'mysql','db2','oracle') |
+-------------------------------+
| mysql |
+-------------------------------+
1 row in set (0.00 sec)

1.5.5 选择字符串的make_set()函数:

函数定义为:

make_set(num,str1,str2...strn)

示例:

mysql> select bin(5),make_set(5,'mysql','db2','oracle','redus');
+--------+--------------------------------------------+
| bin(5) | make_set(5,'mysql','db2','oracle','redus') |
+--------+--------------------------------------------+
| 101 | mysql,oracle |
+--------+--------------------------------------------+
1 row in set (0.00 sec)
//make_set()首先会将数值num转换成二进制数,然后按照二进制从参数str1,str2,...,strn中选取相应的字符串。再通过二进制从右到左的顺序读取该值,如果值为1选择该字符串,否则将不选择该字符串。

1.6 从现有字符串中截取子字符串:

截取子字符串的函数有:left(),right(),substring(),mid();

1.6.1 从左边或右边截取子字符串:

函数定义为:

left(str,num)
//返回字符串str中包含前num个字母(从左边数)的字符串。
right(str,num)
//返回字符串str中包含后num个字母(从右边数)的字符串。

示例:

mysql> select left('mysql',2),right('mysql',3);
+-----------------+------------------+
| left('mysql',2) | right('mysql',3) |
+-----------------+------------------+
| my | sql |
+-----------------+------------------+
1 row in set (0.00 sec)

1.6.2 截取指定位置和长度的字符串:

可以通过substring()和mid()函数截取指定位置和长度的字符串。

函数语法为:

substring(str,num,len) //返回字符串str中的第num个位置开始长度为len的子字符串。
mid(str,num,len)

示例:

mysql> select substring('zhaojd',2,3),mid('zhaojd',2,4);
+-------------------------+-------------------+
| substring('zhaojd',2,3) | mid('zhaojd',2,4) |
+-------------------------+-------------------+
| hao | haoj |
+-------------------------+-------------------+
1 row in set (0.00 sec)

1.7 去除字符串的首尾空格:

去除字符串首尾空格的函数有:ltrim()、rtrim()、trim()

1.7.1 去除字符串开始处的空格:

函数定义如下:

ltrim(str) //返回去掉开始处空格的字符串

示例:

mysql> select length(concat('-',' mysql ','-')),length(concat('-',ltrim(' mysql '),'-'));
+-----------------------------------+------------------------------------------+
| length(concat('-',' mysql ','-')) | length(concat('-',ltrim(' mysql '),'-')) |
+-----------------------------------+------------------------------------------+
| 9 | 8 |
+-----------------------------------+------------------------------------------+
1 row in set (0.00 sec)

1.7.2 去除字符串结束处的空格:

rtrim(str) //返回去掉结束处空格的字符串。

示例:

mysql> select length(concat('-',' mysql ','-')) ,length(concat('-',rtrim(' mysql '),'-'));
+-----------------------------------+------------------------------------------+
| length(concat('-',' mysql ','-')) | length(concat('-',rtrim(' mysql '),'-')) |
+-----------------------------------+------------------------------------------+
| 9 | 8 |
+-----------------------------------+------------------------------------------+
1 row in set (0.00 sec)

1.7.3 去除字符串首尾空格:

trim(str) //返回去掉首尾空格的字符串

示例:

mysql> select concat(' mysql ') origi,length(concat(' mysql ')) orilen, concat(trim(' mysql ')) after, length(concat(trim(' mysql '))) afterlen;
+---------+--------+-------+----------+
| origi | orilen | after | afterlen |
+---------+--------+-------+----------+
| mysql | 7 | mysql | 5 |
+---------+--------+-------+----------+
1 row in set (0.00 sec)

1.8 替换字符串:

实现替换字符串的功能,分别为insert()和replace()

1.8.1 使用insert()函数:

函数定义为:

insert(str,pos,len,newstr)
//insert()函数会将字符串str中的pos位置开始长度为len的字符串用字符串newstr来替换。
//如果参数pos的值超过字符串长度,则返回值为原始字符串str。
//如果len的长度大于原来str中所剩字符串的长度,则从位置pos开始进行全部替换。若任何一个参数为null,则返回值为null.

示例:

mysql> select insert('这是mysql数据库系统',3,5,'oracle') bieming;
+----------------------+
| bieming |
+----------------------+
| 这oracleql数据库系统 |
+----------------------+
1 row in set, 1 warning (0.00 sec)

1.8.1 使用replace()函数:

函数的定义为:

replace(str,substr,newstr) //将字符串str中的子字符串substr用字符串newstr来替换。

示例:

mysql> select replace('这是mysql数据库','mysql','db2') bieming;
+---------------+
| bieming |
+---------------+
| 这是db2数据库 |
+---------------+
1 row in set, 1 warning (0.00 sec)

2. 使用数值函数:

2.1 获取随机数:

通过rand()和rand(x)函数来获取随机数。这两个函数都会返回0-1之间的随机数,其中rand()函数返回的数是完全随机的,而rand(x)函数返回的随机数值是完全相同的。

示例:

mysql> select rand(),rand(),rand(3),rand(3);
+--------------------+--------------------+--------------------+--------------------+
| rand() | rand() | rand(3) | rand(3) |
+--------------------+--------------------+--------------------+--------------------+
| 0.9600886758045188 | 0.7006410161970565 | 0.9057697559760601 | 0.9057697559760601 |
+--------------------+--------------------+--------------------+--------------------+
1 row in set (0.00 sec)

2.2 获取整数的函数:

在具体应用中,如果想要获取整数,可以通过ceil()和floor()函数来实现。

ceil()函数的定义为:

ceil(x) //函数返回大于或等于数值x的最小整数。
floor() //函数返回小于或等于数值x的最大整数。

示例:

mysql> select ceil(4.3),ceil(-2.5),floor(4.3),floor(-2.5);
+-----------+------------+------------+-------------+
| ceil(4.3) | ceil(-2.5) | floor(4.3) | floor(-2.5) |
+-----------+------------+------------+-------------+
| 5 | -2 | 4 | -3 |
+-----------+------------+------------+-------------+
1 row in set (0.00 sec)

2.3 截取数值函数:

可以通过truncate()对数值的小数位进行截取:

函数定义为:

truncate(x,y) //返回数值x,保留小数点后y位

示例:

mysql> select truncate(903.343434,2),truncate(903.343,-1);
+------------------------+----------------------+
| truncate(903.343434,2) | truncate(903.343,-1) |
+------------------------+----------------------+
| 903.34 | 900 |
+------------------------+----------------------+
1 row in set (0.00 sec)

2.4 四舍五入函数:

对数值进行四舍五入可以通过round()函数实现:
round(x)
//函数返回值x经过四舍五入操作后的数值。
round(x,y)
//返回数值x保留到小数点后y位的值。在具体截取数据时需要进行四舍五入的操作。

示例:

mysql> select round(903.53567),round(-903.53567),round(903.53567,2),round(903.53567,-1);
+------------------+-------------------+--------------------+---------------------+
| round(903.53567) | round(-903.53567) | round(903.53567,2) | round(903.53567,-1) |
+------------------+-------------------+--------------------+---------------------+
| 904 | -904 | 903.54 | 900 |
+------------------+-------------------+--------------------+---------------------+
1 row in set (0.00 sec)

3. 使用日期和时间函数:

3.1 获取当前日期和时间的函数:

3.1.1 获取当前日期和时间(日期 + 时间):

MySQL中可以通过四个函数获取当前日期和时间,分别是now(),current_timestamp(),localtime(),sysdate(),这四个函数不仅可以获取当前日期和时间,而且显示的格式也一样。推荐使用now()

示例:

mysql> select now(),current_timestamp(),localtime(),sysdate();
+---------------------+---------------------+---------------------+---------------------+
| now() | current_timestamp() | localtime() | sysdate() |
+---------------------+---------------------+---------------------+---------------------+
| 2016-08-25 16:09:20 | 2016-08-25 16:09:20 | 2016-08-25 16:09:20 | 2016-08-25 16:09:20 |
+---------------------+---------------------+---------------------+---------------------+
1 row in set (0.00 sec)

3.1.2 获取当前日期:

获取当前日期的函数curdate()和current_date()函数。

示例:

mysql> select curdate(),current_date();
+------------+----------------+
| curdate() | current_date() |
+------------+----------------+
| 2016-08-25 | 2016-08-25 |
+------------+----------------+
1 row in set (0.00 sec)

3.1.3 获取当前时间:

获取当前时间的函数,curtime()或者current_time();推荐使用curtime();

示例:

mysql> select curtime(),current_time();
+-----------+----------------+
| curtime() | current_time() |
+-----------+----------------+
| 16:15:04 | 16:15:04 |
+-----------+----------------+
1 row in set (0.00 sec)

3.2 获取日期和时间各部分值:

在MySQL中,可以通过各种函数来获取当前日期和时间的各部分值,其中year()函数返回日期中的年份,quarter()函数返回日期属于第几个季度,month()函数返回日期属于第几个月,week()函数返回日期属于第几个星期,dayofmonth()函数返回日期属于当前月的第几天,hour()函数返回时间的小时,minute()函数返回时间的分钟,second()函数返回时间的秒。

示例:

mysql> select now(),year(now()),quarter(now()),month(now()),week(now()),dayofmonth(now()),hour(now()),minute(now()),second(now());
+---------------------+-------------+----------------+--------------+-------------+-------------------+-------------+---------------+---------------+
| now() | year(now()) | quarter(now()) | month(now()) | week(now()) | dayofmonth(now()) | hour(now()) | minute(now()) | second(now()) |
+---------------------+-------------+----------------+--------------+-------------+-------------------+-------------+---------------+---------------+
| 2016-08-25 16:27:37 | 2016 | 3 | 8 | 34 | 25 | 16 | 27 | 37 |
+---------------------+-------------+----------------+--------------+-------------+-------------------+-------------+---------------+---------------+
1 row in set (0.00 sec)

3.2.1 关于月的函数:

示例:

mysql> select now(),month(now()),monthname(now());
+---------------------+--------------+------------------+
| now() | month(now()) | monthname(now()) |
+---------------------+--------------+------------------+
| 2016-08-25 16:29:37 | 8 | August |
+---------------------+--------------+------------------+
1 row in set (0.00 sec)
//month()函数返回数字表示的月份,monthname()函数返回了英文表示的月份。

3.2.2 关于星期的函数:

示例:

mysql> select now(),week(now()),weekofyear(now()),dayname(now()),dayofweek(now()),weekday(now());
+---------------------+-------------+-------------------+----------------+------------------+----------------+
| now() | week(now()) | weekofyear(now()) | dayname(now()) | dayofweek(now()) | weekday(now()) |
+---------------------+-------------+-------------------+----------------+------------------+----------------+
| 2016-08-25 16:34:35 | 34 | 34 | Thursday | 5 | 3 |
+---------------------+-------------+-------------------+----------------+------------------+----------------+
1 row in set (0.00 sec)

3.2.3 关于天的函数:

示例:

mysql> select now(),dayofyear(now()),dayofmonth(now());
+---------------------+------------------+-------------------+
| now() | dayofyear(now()) | dayofmonth(now()) |
+---------------------+------------------+-------------------+
| 2016-08-25 16:37:12 | 238 | 25 |
+---------------------+------------------+-------------------+
1 row in set (0.00 sec)

3.2.4 获取指定值的extract():

函数定义为:

extract(type from date)
//上述函数会从日期和时间参数date中获取指定类型参数type的值。type的取值可以是:year,month,day,hour,minute和second

示例:

mysql> select now(),extract(year from now()) year,extract(month from now()) month,extract(day from now()) day,extract(hour from now()) hour,extract(mi
nute from now()) minute,extract(second from now()) second;
+---------------------+------+-------+------+------+--------+--------+
| now() | year | month | day | hour | minute | second |
+---------------------+------+-------+------+------+--------+--------+
| 2016-08-25 16:43:45 | 2016 | 8 | 25 | 16 | 43 | 45 |
+---------------------+------+-------+------+------+--------+--------+
1 row in set (0.00 sec)

3.3 计算日期和时间的函数:

3.3.1 与默认日期和时间操作:

两个函数来实现与默认日期和时间的操作,分别为to_days()和from_days()

to_days(date):该函数计算日期参数date与默认日期和时间(0000年1月1日)之间的想个天数。

from_days(number):该函数计算从默认日期和时间(0000年1月1日)开始经历number天后的日期和时间。

示例:

mysql> select now(),to_days(now()),from_days(to_days(now()));
+---------------------+----------------+---------------------------+
| now() | to_days(now()) | from_days(to_days(now())) |
+---------------------+----------------+---------------------------+
| 2016-08-25 16:50:30 | 736566 | 2016-08-25 |
+---------------------+----------------+---------------------------+
1 row in set (0.00 sec)
//指定两个日期之间相隔的天数;
mysql> select now(),datediff(now(),'2000-12-01');
+---------------------+------------------------------+
| now() | datediff(now(),'2000-12-01') |
+---------------------+------------------------------+
| 2016-08-25 16:52:16 | 5746 |
+---------------------+------------------------------+
1 row in set (0.00 sec)

3.3.2 与指定日期和时间操作:

adddate(date,n)函数:该函数计算日期参数date加上n天后的日期。

subdate(date,n)函数:该函数计算日期参数date减去n天后的日期。

adddate(d,interval expr type):返回日期参数d加上一段时间后的日期,表达式参数expr决定了时间的长度,参数type决定了所操作的对象。

subdate(d,interval expr type):返回日期参数d减去一段时间后的日期,表达式expr决定了时间的长度。参数type决定了所操作的对象。

addtime(time,n):计算时间参数time加上n秒后的时间。

subtime(time,n):计算时间参数time减去n秒后的时间。

示例一:

mysql> select curdate(),adddate(curdate(),5),subdate(curdate(),5);
+------------+----------------------+----------------------+
| curdate() | adddate(curdate(),5) | subdate(curdate(),5) |
+------------+----------------------+----------------------+
| 2016-08-25 | 2016-08-30 | 2016-08-20 |
+------------+----------------------+----------------------+
1 row in set (0.00 sec) 

示例二:

mysql> select curdate(),adddate(curdate(),interval '2,3' year_month),subdate(curdate(),interval '2,3' year_month);
+------------+----------------------------------------------+----------------------------------------------+
| curdate() | adddate(curdate(),interval '2,3' year_month) | subdate(curdate(),interval '2,3' year_month) |
+------------+----------------------------------------------+----------------------------------------------+
| 2016-08-25 | 2018-11-25 | 2014-05-25 |
+------------+----------------------------------------------+----------------------------------------------+
1 row in set (0.00 sec)

示例三:

mysql> select curtime(),addtime(curtime(),5),subtime(curtime(),5);
+-----------+----------------------+----------------------+
| curtime() | addtime(curtime(),5) | subtime(curtime(),5) |
+-----------+----------------------+----------------------+
| 17:12:21 | 17:12:26 | 17:12:16 |
+-----------+----------------------+----------------------+
1 row in set (0.00 sec)

4. 使用系统信息函数:

select version(),database(),user();

示例:

mysql> select version(),database(),user();
+------------+------------+----------------+
| version() | database() | user() |
+------------+------------+----------------+
| 5.5.51-log | NULL | root@localhost |
+------------+------------+----------------+
1 row in set (0.00 sec)
//获取 auto_increment约束的最后ID
select last_insert_id();

以上所述是小编给大家介绍的MySQL中的常用函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • MySQL常用聚合函数详解

    一.AVG AVG(col) 返回指定列的平均值 二.COUNT COUNT(col) 返回指定列中非NULL值的个数 三.MIN/MAX MIN(col):返回指定列的最小值 MAX(col):返回指定列的最大值 四.SUM SUM(col) 返回指定列的所有值之和 五.GROUP_CONCAT GROUP_CONCAT([DISTINCT] expr [,expr ...]              [ORDER BY {unsigned_integer | col_name | expr}

  • MySQL存储过程中的基本函数和触发器的相关学习教程

    MySQL存储过程的常用函数 一.字符串类 CHARSET(str) //返回字串字符集 CONCAT (string2 [,... ]) //连接字串 INSTR (string ,substring ) //返回substring首次在string中出现的位置,不存在返回0 LCASE (string2 ) //转换成小写 LEFT (string2 ,length ) //从string2中的左边起取length个字符 LENGTH (string ) //string长度 LOAD_FI

  • 借助PHP的mysql_query()函数来创建MySQL数据库的教程

    以mysql_query()函数作为教程的基础前提,我们先来看一下mysql_query()的用法: mysql_query()函数 PHP MySQL 函数库中,mysql_query() 函数用于向 MySQL 发送并执行 SQL 语句. 对于没有数据返回结果集的 SQL ,如 UPDATE.DELETE 等在执行成功时返回 TRUE,出错时返回 FALSE:对于 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE. 语

  • mysql常用日期时间/数值函数详解(必看)

    1.日期时间函数 时间转化秒函数:time_to_sec MySQL> select time_to_sec('01:01:01'); +-------------------------+ | time_to_sec('01:01:01') | +-------------------------+ | 3661 | +-------------------------+ 1 row in set (0.00 sec) 秒转化时间函数:sec_to_time mysql> select se

  • PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...

    背景:把mysql换成mysqli时出现,连接数过多,其实际上并不是,原因是我挪动了一下php的sock文件位置导致,因这几个socket修改没有修改完全,于是出现了too many connections ,从mysql里show processlist并没有发现真的有连接,其实用tshark抓下包估计能看到(http://justwinit.cn/post/7458/),并没有发出请求,而估计是mysqli的客户端自己报出来的,别看这个问题小,搞了老半天,都想重新安装Php了,发现原来是路径

  • PHP操作MySQL的mysql_fetch_* 函数的常见用法教程

    mysql_fetch_* 列函数 mysql_fetch_* 列函数的主要功能是从查询返回的结果集中取得相关的查询结果,主要包括: mysql_fetch_array():从结果集中取得一行作为关联数组或索引数组,或二者兼有 mysql_fetch_row():从结果集中取得一行作为枚举数组 mysql_fetch_assoc():从结果集中取得一行作为关联数组 mysql_fetch_object():从结果集中取得一行作为对象 mysql_fetch_field():从结果集中取得字段信息

  • 理解MySQL存储过程和函数

    一.概述  一提到存储过程可能就会引出另一个话题就是存储过程的优缺点,这里也不做讨论,一般别人问我我就这样回答你觉得它好你就用它.因为mysql中存储过程和函数的语法非常接近所以就放在一起,主要区别就是函数必须有返回值(return),并且函数的参数只有IN类型而存储过程有IN.OUT.INOUT这三种类型. 二.语法   创建存储过程和函数语法 CREATE PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] rout

  • Mysql row number()排序函数的用法和注意

    虽然使用不多,但是也有情况是需要在mysql 里面写语句开发功能的.在sql server 使用惯了,习惯了使用row_number() 函数进行排序,但是mysql 确没有这样一个函数.然后找到了po主写的一篇 文章.通过变量赋值来查询的.(PS 我测试的版本是mysql 5.6) 先建表 CREATE TABLE `test` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `Col1` varchar(50) DEFAULT NULL, `Col2` var

  • MySQL中的常用函数

    在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update.delete语句中. 常用的函数有: 1. 字符串函数:主要用于处理字符串. 2. 数值函数:主要用于处理数字. 3. 日期和时间函数:主要用于处理日期和事件. 4. 系统信息函数:获取系统信息. 1. 使用字符串函数: 虽然每种数据库都支持SQL,但是每种数据库拥有各自所支持的函数. 1.1 合并字符串函数concat() 和 concat_ws(): 在MySQL中可以通过函数concat()和con

  • MySQL详细汇总常用函数

    目录 MySQL常用函数 一.数字函数 二.字符串函数 三.时间函数 四.系统函数 五.聚合函数 MySQL常用函数 一.数字函数 附加:ceil(x) 如ceil(1.23) 值为2 可以写成ceiling(x) 二.字符串函数 划线就是常用的(取字节数) 附加:char_length字符 (查询名字后三位数的) 如:char_length(name)=3 可写成: select left(name,1) from c1; 三.时间函数 用法:select now(); 四.系统函数 为了加分

  • MySql中的json_extract函数处理json字段详情

    目录 前言 1. 使用方式 2. 使用演示 3. 小结 前言 在db中存储json格式的数据,相信大家都或多或少的使用过,那么在查询这个json结构中的数据时,有什么好的方法么?取出String之后再代码中进行解析? 接下来本文将介绍一下Mysql5.7+之后提供的json_extract函数,可以通过key查询value值 1. 使用方式 数据存储的数据是json字符串,类型为我们常用的varchar即可 语法: JSON_EXTRACT(json_doc, path[, path] -) 若

  • 推荐ASP中VBScript常用函数

    /*-------------------ASP文档参考集-----------------------*/ *-->作者:草履虫 *-->时间:2007-4.28---2007-4.30(原来是自己编写的手册,现在发在这里) *-->联系:caolvchong@gmail.com *-->文档功能: 1.复习了ASP,加深了对ASP结构的理解和ASP的体会 2.可以用来做ASP参考,自己写的,参考起来更方便 这是第五部分:ASP中VBScript常用函数 /*----------

  • 浅谈头文件algorithm中的常用函数

    一.非修改性序列操作(12个) 循环         对序列中的每个元素执行某操作         for_each() 查找         在序列中找出某个值的第一次出现的位置         find() 在序列中找出符合某谓词的第一个元素     find_if() 在序列中找出一子序列的最后一次出现的位置         find_end() 在序列中找出第一次出现指定值集中之值的位置     find_first_of() 在序列中找出相邻的一对值         adjacent_

  • 浅谈Mysql中类似于nvl()函数的ifnull()函数

    IFNULL(expr1,expr2) 如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2.IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境. mysql> select IFNULL(1,0); -> 1 mysql> select IFNULL(0,10); -> 0 mysql> select IFNULL(1/0,10); -> 10 mysql> select IFNULL(1/0,'yes'); ->

  • mysql中操作表常用的sql总结

    1.查看表格的各个字段类型 describe table_name desc table_name 2.给表名重命名 rename table 原表名 to 新表名; 3.mysql查询超时解决 select /+QUERY_TIMEOUT(150000000000)/ * from table_name sql加上+/+QUERY_TIMEOUT(150000000000)/ 4.查看索引 show index from table_name 5.创建普通索引 create index 索引名

  • python的scipy.stats模块中正态分布常用函数总结

    python的scipy.stats模块是连续型随机变量的公共方法,可以产生随机数,通常是以正态分布作为scipy.stats的基本使用方法.本文介绍正态分布的两种常用函数:1.累积概率密度函数stats.norm.cdf(α,均值,方差):2.概率密度函数stats.norm.pdf(α,均值,方差). 1.stats.norm.cdf(α,均值,方差):累积概率密度函数 使用格式 status.norm.cdf(Norm) # 相当于已知正态分布函数曲线和x值,求函数x点左侧积分 使用实例

  • mysql中DCL常用的用户和权限控制

    目录 前言 一.用户控制管理 二.权限控制管理 三. 数据库权限列表 前言 本文总结了mysql中DCL,常用的一些权限控制,后续使用到其他会继续补充. 一.用户控制管理 创建用户 create user '用户名'@'主机名' identified by '密码'; 修改用户密码 alter user '用户名'@'主机名' identified with mysql_native_password by '密码'; 删除用户 drop user '用户名'@'主机名'; 例如: #1 查询用

  • Mysql中的concat函数(拼接函数)详解

    目录 Mysql中的concat函数(拼接函数) 概述 Mysql Concat函数 Mysql Concat_Ws函数 Mysql中的concat函数(拼接函数) 概述 很多时候,我们需要将不同地方获得的字符串拼接在一起,此时就需要使用CONCAT和CONCAT_WS函数 要连接两个或多个引用的字符串值,请将字符串放在一起,如下所示: mysql> SELECT 'MySQL ' 'String ' 'Concatenation'; +----------------------------+

随机推荐