SQL基础系列-内置函数--转载w3school

Posted 逆向行驶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL基础系列-内置函数--转载w3school相关的知识,希望对你有一定的参考价值。

1.    日期函数

Mssql:

SELECT GETDATE()

返回当前日期和时间

 

SELECT DATEPART(yyyy,OrderDate) AS OrderYear,

DATEPART(mm,OrderDate) AS OrderMonth,

DATEPART(dd,OrderDate) AS OrderDay

FROM Orders1

WHERE OrderId=1

返回日期/时间的单独部分

 

SELECT OrderId,OrderDate,DATEADD(day,2,OrderDate) AS OrderPayDate

FROM Orders1

在日期中添加或减去指定的时间间隔

 

 

SELECT DATEDIFF(day,‘2016-06-08‘,‘2016-06-08‘) AS DiffDate

返回两个日期之间的时间

 

CONVERT() 函数是把日期转换为新数据类型的通用函数。

CONVERT() 函数可以用不同的格式显示日期/时间数据。

SELECT CONVERT(VARCHAR(19),GETDATE())

SELECT CONVERT(VARCHAR(10),GETDATE(),110)

SELECT CONVERT(VARCHAR(11),GETDATE(),106)

SELECT CONVERT(VARCHAR(24),GETDATE(),113)

函数

描述

GETDATE()

返回当前日期和时间

DATEPART()

返回日期/时间的单独部分

DATEADD()

在日期中添加或减去指定的时间间隔

DATEDIFF()

返回两个日期之间的时间

CONVERT()

用不同的格式显示日期/时间

 

mysql

 

函数

描述

NOW()

返回当前的日期和时间

CURDATE()

返回当前的日期

CURTIME()

返回当前的时间

DATE()

提取日期或日期/时间表达式的日期部分

EXTRACT()

返回日期/时间按的单独部分

DATE_ADD()

给日期添加指定的时间间隔

DATE_SUB()

从日期减去指定的时间间隔

DATEDIFF()

返回两个日期之间的天数

DATE_FORMAT()

用不同的格式显示日期/时间

 

 

2.    ISNULL IFNULL

 

Mssql

SELECT ProductName,UnitPrice*(UnitsInStock+ISNULL(UnitsOnOrder,0))

FROM Products

 

Mysql

SELECT ProductName,UnitPrice*(UnitsInStock+IFNULL(UnitsOnOrder,0))

FROM Products

 

SELECT ProductName,UnitPrice*(UnitsInStock+COALESCE(UnitsOnOrder,0))

FROM Products

3.    函数

 

AVG 函数返回数值列的平均值。NULL 值不包括在计算中。

SELECT AVG(OrderPrice) AS OrderAverage FROM Orders

用在where后

SELECT Customer FROM Orders

WHERE OrderPrice>(SELECT AVG(OrderPrice) FROM Orders)

 

Count

SELECT COUNT(column_name) FROM table_name

COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入)

 

SELECT COUNT(*) FROM table_name

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

 

SELECT FIRST(column_name) FROM table_name

SELECT LAST(column_name) FROM table_name

 

MAX 函数返回一列中的最大值。NULL 值不包括在计算中。

SELECT MAX(column_name) FROM table_name

MIN 函数返回一列中的最小值。NULL 值不包括在计算中

SELECT MIN(column_name) FROM table_name

 

求和

SELECT SUM(column_name) FROM table_name

 

分组

SELECT column_name, aggregate_function(column_name)

FROM table_name

WHERE column_name operator value

GROUP BY column_name

 

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

 

Where后不能直接接聚合函数,加having即可

SELECT Customer,SUM(OrderPrice) FROM Orders

WHERE Customer=‘Bush‘ OR Customer=‘Adams‘

GROUP BY Customer

HAVING SUM(OrderPrice)>1500

 

UCASE 函数把字段的值转换为大写

SELECT UCASE(column_name) FROM table_name

LCASE 函数把字段的值转换为小写

SELECT LCASE(column_name) FROM table_name

 

MID 函数用于从文本字段中提取字符

SELECT MID(column_name,start[,length]) FROM table_name

LEN 函数返回文本字段中值的长度

SELECT LEN(City) as LengthOfCity FROM Persons

ROUND 函数用于把数值字段舍入为指定的小数位数

SELECT ROUND(column_name,decimals) FROM table_name

 

NOW 函数返回当前的日期和时间

SELECT ProductName, UnitPrice, Now() as PerDate FROM Products

FORMAT 函数用于对字段的显示进行格式化

SELECT FORMAT(column_name,format) FROM table_name

 

以上是关于SQL基础系列-内置函数--转载w3school的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#sql server 常用函数基础实战系列

Spark基础学习笔记29:Spark SQL内置函数

JavaScript夯实基础系列:闭包

Python基础内置函数

楼梯T-SQL:超越基础6级:使用CASE表达式和IIF函数

python内置函数中的 IO文件系列 open和os