SQL 函数

1 MySQL Date 函数

函数 描述 在数据库中的存储格式
now() 返回当前的日期和时间
curdate 返回当前的日期
curtime 返回当前的时间
date 提取日期或日期/时间表达式的日期部分 YYYY-MM-DD
extract 返回日期/时间的单独部分
date_add() 向日期添加指定的时间间隔
date_sub() 从日期减去指定的时间间隔
datediff() 返回两个日期之间的天数
date_format() 用不同的格式显示日期/时间

2 SQL server Date函数

函数 描述
getdate() 返回当前的日期和时间
datepart() 返回日期/时间的单独部分
dateadd() 在日期中添加或减去指定的时间间隔
datediff() 返回两个日期之间的时间
convert() 用不同的格式显示日期/时间

3 SQL null值和not null 值

null 值代表遗漏的未知数据。
注释:无法比较 null 和 0;它们是不等价的。

函数 描述
ISNULL()
NVL()
IFNULL()
COALESCE()

4 SQL Aggregate函数

SQL Aggregate 函数计算从列表中取得的值,返回一个单一的值。

函数 描述
AVG() 返回平均值
count() 返回行数
first() 返回第一个记录的值
last() 返回最后一个记录的值
max() 返回最大值
min() 返回最小值
sum() 返回综合

4.1 语法

4.1.1 avg()

avg()语法

selecct avg(column_name) from table_name

4.1.2 count()

count(column_name)语法:

count(column_name)函数返回指定列的值得数目(null不计入)

select count(column_name) from table_name;

count(*)语法:

count(*)函数返回表中的记录数:

select count(*) from table_name;

count(distinct column_name)语法

count(distinct column_name)函数返回指定列的不同值得数目:

select count(distinct column_name) from table_name;

注释:count(distinct) 适用于oracle和 MSSQL,但是无法用于 MSAccess。

4.4.3 first() 函数

first() 函数返回指定的列中第一个记录的值。

first() 语法

select first(column_name) from table_name;

注释:只有 MS Access 支持 first() 函数。

SQL server、MySQL 和 oracle 中的 SQL first() 工作区

SQL server语法:

select top 1 column_name from table_name
order by column_name ASC;

MySQL语法:

select column_name from table_name
order by column_name asc
limit 1;

oracle语法:

select column_name from table_name
ordrt by column_name asc
where rownum<=1;

4.1.4 last() 函数

last() 函数返回指定的列中最后一个记录的值。

last() 语法

select last(column_name) from table_name;
注释:只有MS Access 支持 last() 函数。

SQL server、MySQL 和 oracle 中的 SQL last() 工作区

SQL server 语法:

select top 1 column_name from table_name
order by column_name desc;

mysql 语法:

select column_name from table_name
order by column_name desc
limit 1;

oracle 语法:

select column_name from table_name
order by column_name desc
where rownum <= 1;

4.4.5 max()、min() 和 sum() 函数

max() 返回指定列的最大值。
min() 返回指定列的最小值。
sum() 返回数值列的总数。

max() 语法

select max(column_name) from table_name;

min() 语法

select min(column_name) from table_name

sun() 语法

select sum(column_name) from table_name;

4.2 group by 语句

group by 语句可结合一些聚合函数来使用,根据一个或多个列对结果集进行分组。

group by 语法

select column_name,aggregate_function(column_name)
from table_name
where column_name operator value
group by column_name;

4.3 having 子句

在 SQL 中增加 having 子句原因是,where关键字无法与聚合函数一起使用。
having 子句可以让我们筛选分组后的各组数据。

having 语法

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;

4.4 exists 运算符

exists 运算符用于判断查询子句是否有记录,如果有一条或多条记录存在返回 true,否则返回 false。

exists 语法

sselect column_name(s)
from table_name
where exists
(select colument_name from table_name where condition);

查询Websites表:

查询access_log表:

5 SQL Scalar 函数

SQL scalar 函数基于输入值,返回一个单一的值。

函数 描述
ucase() 将某个字段转换成大写
lcase() 将某个字段转换为小写
mid() 从某个文本字段提取字符,MySQL中使用
substring(字段,1,end) 从某个文本字段提取字符
len() 返回某个文本字段的长度
round() 对某个字段的显示方式
now() 返回当前的系统日期和时间
format() 格式化某个字段的显示方式

5.1 ucase() 函数

ucase() 函数把字段的值转换为大写。

ucase() 语法

select ucase(column_name) from table_name;

用于SQL server 的语法

select upper(column_name) from table_name;

5.2 lcase() 函数

lcase() 函数把字段的值转换为小写。

lcase() 语法

select lcase(column_name) from table_name;

用于SQL server 的语法

select lower(column_name) from table_name;

5.3 mid() 函数

mid() 函数用于从文本字段中提取字符。

mid() 语法

select mid(column_name,start[,length]) from table_name;

参数 描述
column_name 必需。要提取字符的字段
start 必需。规定开始位置(起始值是1)
length 可选。要返回的字符数。如果省略,则mid()函数返回剩余文本。

5.4 len() 函数

len() 函数返回文本字段中值得长度。

len() 语法

select len(column_name) from table_name;

mysql中函数为length()
select length(column_name) from table_name;

5.5 round() 函数

round() 函数用于吧数值字段舍入为指定的小树位数。

round() 语法

select round(column_name,decimals) from table_name;
| 参数 | 描述 |
| column_name| 必需。要舍入的字段 |
| decimals | 可选。规定要返回的小数位数 |

round(X):返回参数X的四舍五入的一个整数。

round(x,D):返回参数X的四舍五入的有D位小数的一个数字。如果D为0,结果将没有小数点或小数部分。

5.5 now() 函数

now() 函数返回当前系统的日期和时间。

now() 语法

select now() from table_name;

5.6 format() 函数

format() 函数用于对字段的显示进行格式化。

fermat() 语法

select format(column_name,format) from table_name;

参数 描述
column_name 必需。要格式化的字段
format 必需。规定格式

posted @ 2022-12-13 11:48  空岛迷梦  阅读(71)  评论(0编辑  收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css