函数
Aggregate函数
Aggregate 函数计算从列中取得的值,返回一个单一的值。
1、AVG() - 返回平均值
语法:
SELECT AVG(column_name)
FROM table_name
WHERE condition;
2、COUNT() - 返回行数
语法:
COUNT函数返回指定列的值的数目(NULL 不计入):
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
COUNT函数返回表中的记录数:
SELECT COUNT(*) FROM table_name;
COUNT 函数返回指定列的不同值的数目:
SELECT COUNT(DISTINCT column_name) FROM table_name;
3、FIRST() - 返回第一个记录的值
语法:
SELECT FIRST(column_name) FROM table_name;
4、LAST() - 返回最后一个记录的值
语法:
SELECT LAST(column_name) FROM table_name;
5、MAX() - 返回最大值
语法:
SELECT MAX(column_name)
FROM table_name
WHERE condition;
6、MIN() - 返回最小值
语法:
SELECT MIN(column_name)
FROM table_name
WHERE condition;
7、SUM() - 返回总和
语法:
SELECT SUM(column_name)
FROM table_name
WHERE condition;
日期函数
GROUP BY 语句
GROUP BY 语句用于结合 Aggregate 函数,根据一个或多个列对结果集进行分组。语法:
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);
HAVING 子句
HAVING 子句原因是,WHERE 关键字无法与 Aggregate 函数一起使用。
语法:
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);
FIELD()函数
FIELD()函数返回的索引(从1开始的位置)的str在str1,str2,str3,…列表中。如果str没有找到,则返回0。 就是用第一个参数str,跟后面的N个字符串参数中寻找,如果寻找到一模一样的字符串,则返回其索引位置
eg:
SQL> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');
+---------------------------------------------------------+
| FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo') |
+---------------------------------------------------------+
| 2 |
+---------------------------------------------------------+
1 row in set (0.00 sec)
UPPER()函数
SQL upper()函数字母大小写转换函数,将字母转成大写 - 返回字符串str,根据当前字符集映射的所有字符更改为大写。
eg:
SQL> SELECT UPPER('Allah-hus-w3cschool');
+---------------------------------------------------------+
| UPPER('Allah-hus-w3cschool') |
+---------------------------------------------------------+
| ALLAH-HUS-W3CSCHOOL |
+---------------------------------------------------------+
1 row in set (0.00 sec)
LOWER()函数
lower()字母大小写转换函数,将字母转成小写 - 返回根据当前字符集映射所有字符改变为小写,即返回小写的字符串。eg:
SQL> SELECT LOWER('W3CSCHOOL');
+---------------------------------------------------------+
| LOWER('W3CSCHOOL') |
+---------------------------------------------------------+
| w3cschool |
+---------------------------------------------------------+
1 row in set (0.00 sec)
Scalar函数
Scalar 函数基于输入值,返回一个单一的值。
1、UCASE() - 将某个字段转换为大写
语法:
SELECT UCASE(column_name) FROM table_name;
2、LCASE() - 将某个字段转换为小写
语法:
SELECT LCASE(column_name) FROM table_name;
3、MID() - 从某个文本字段提取字符
语法:
SELECT MID(column_name,start[,length]) FROM table_name;
参数 | 描述 |
---|---|
column_name | 必需。要提取字符的字段。 |
start | 必需。规定开始位置(起始值是 1)。 |
length | 可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。 |
4、LEN() - 返回某个文本字段的长度
语法:
SELECT LEN(column_name) FROM table_name;
5、ROUND() - 对某个数值字段进行指定小数位数的四舍五入
语法:
SELECT ROUND(column_name,decimals) FROM table_name;
参数 | 描述 |
---|---|
column_name | 必需。要舍入的字段。 |
decimals | 必需。规定要返回的小数位数。 |
6、NOW() - 返回当前的系统日期和时间
语法:
SELECT NOW() FROM table_name;
7、FORMAT() - 格式化某个字段的显示方式
语法:
SELECT FORMAT(column_name,format) FROM table_name;
参数 | 描述 |
---|---|
column_name | 必需。要格式化的字段。 |
format | 必需。规定格式。 |
SQRT() 函数
SQRT 函数用于计算得出任何数值的平方根。eg:
SQL> select SQRT(16);
+----------+
| SQRT(16) |
+----------+
| 4.000000 |
+----------+
1 row in set (0.00 sec)
RAND() 函数
RAND 函数,用于产生 0 至 1 之间的随机数:
SQL> SELECT RAND( ), RAND( ), RAND( );
+------------------+-----------------+------------------+
| RAND( ) | RAND( ) | RAND( ) |
+------------------+-----------------+------------------+
| 0.45464584925645 | 0.1824410643265 | 0.54826780459682 |
+------------------+-----------------+------------------+
1 row in set (0.00 sec)
CONCAT() 函数
CONCAT 函数用于将两个字符串连接为一个字符串,eg:
SQL> SELECT CONCAT('FIRST ', 'SECOND');
+----------------------------+
| CONCAT('FIRST ', 'SECOND') |
+----------------------------+
| FIRST SECOND |
+----------------------------+
1 row in set (0.00 sec)