SQL学习4

函数

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)
发布了11 篇原创文章 · 获赞 1 · 访问量 238

猜你喜欢

转载自blog.csdn.net/qq_45949348/article/details/105464433
今日推荐