SQL有哪些内置的标准函数,有没有清单和用法

发布网友 发布时间:2022-04-27 04:20

我来回答

2个回答

懂视网 时间:2022-04-09 07:48

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基础系列(2)-内置函数--转载w3school

标签:

热心网友 时间:2022-04-09 04:56

google一下就知道了
比如:
聚合函数:
AVG
COUNT
MAX
MIN
RANGE
STDEV
SUM
VARIANCE

内置时间函数:
DAY
MDY
MONTH
WEEKDAY
YEAR
CURRENT
EXTEND

字符串操作函数
LOWER
UPPER
INITCAP
REPLACE
SUBSTR
SUBSTRING
LPAD
RPAD

其他函数:
LENGTH
USER
CURRENT
TODAY
DBSERVERNAME
HEX
DBINFO
DECODE
NVL
TODAY

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com