SQL中常用系统函数

Posted feiquan

tags:

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

--1 CONVERT(数据类型,表达式),CAST( 表达式 AS 数据类型) 转变数据类型
--将数字转化为字符串
SELECT CONVERT(varchar(2),12)+CONVERT(varchar(2),10) --+为连接符
--同下
SELECT CAST(12 AS varchar(2))+CAST(10 AS varchar(2))

 

--将字符串转化为整型
SELECT CONVERT(int,\'12\')+CONVERT(int,\'10\' ) --+为加号符
--同下
SELECT CAST(\'12\' AS int)+CAST(\'10\' AS int)

 

--将日期转化为字符型,其中的日期格式如下:

 

Without century (yy) (1)With century (yyyy)StandardInput/Output (3)
- 0 or 100 (1,2) Default for datetime and smalldatetime mon dd yyyy hh:miAM (or PM)
1 101 U.S. 1 = mm/dd/yy
101 = mm/dd/yyyy
2 102 ANSI 2 = yy.mm.dd
102 = yyyy.mm.dd
3 103 British/French 3 = dd/mm/yy
103 = dd/mm/yyyy
4 104 German 4 = dd.mm.yy
104 = dd.mm.yyyy
5 105 Italian 5 = dd-mm-yy
105 = dd-mm-yyyy
6 106(1) - 6 = dd mon yy
106 = dd mon yyyy
7 107(1) - 7 = Mon dd, yy
107 = Mon dd, yyyy
8 108 - hh:mi:ss
- 9 or 109 (1,2) Default + milliseconds mon dd yyyy hh:mi:ss:mmmAM (or PM)
10 110 USA 10 = mm-dd-yy
110 = mm-dd-yyyy
11 111 JAPAN 11 = yy/mm/dd
111 = yyyy/mm/dd
12 112 ISO 12 = yymmdd
112 = yyyymmdd
- 13 or 113 (1,2) Europe default + milliseconds dd mon yyyy hh:mi:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 or 120 (2) ODBC canonical yyyy-mm-dd hh:mi:ss(24h)
- 21 or 121 (2) ODBC canonical (with milliseconds) default for time, date, datetime2, and datetimeoffset yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126 (4) ISO8601 yyyy-mm-ddThh:mi:ss.mmm (no spaces)
Note: When the value for milliseconds (mmm) is 0, the millisecond value is not displayed. For example, the value \'2012-11-07T18:26:20.000 is displayed as \'2012-11-07T18:26:20\'.
- 127(6, 7) ISO8601 with time zone Z. yyyy-mm-ddThh:mi:ss.mmmZ (no spaces)
Note: When the value for milliseconds (mmm) is 0, the milliseconds value is not displayed. For example, the value \'2012-11-07T18:26:20.000 is displayed as \'2012-11-07T18:26:20\'.
- 130 (1,2) Hijri (5) dd mon yyyy hh:mi:ss:mmmAM
In this style, mon represents a multi-token Hijri unicode representation of the full month\'s name. This value does not render correctly on a default US installation of SSMS.
- 131 (2) Hijri (5) dd/mm/yyyy hh:mi:ss:mmmAM


SELECT CONVERT(varchar(10),GETDATE(),126)

 


SELECT CONVERT(varchar(10),GETDATE(),100)

 


--同下
SELECT CAST(GETDATE() AS varchar(10) )

 

 

 --此外还可以转换为以下格式:

 


--2 CURRENT_USER 返回当前用户的名字
SELECT CURRENT_USER

 

--3 DATALENFTH 返回用于指定表达式的字节数
SELECT DATAlENGTH(\'中国A\')
SELECT DATALENGTH(\'123433\')

 

--4 HOST_NAME 返回当前用户所登录的计算机名字
SELECT HOST_NAME() --计算机名字
SELECT HOST_ID() --计算机ID

--5 SYSTEM_USER 返回当前所登陆的用户名称
SELECT SYSTEM_USER

--6 USER_NAME 从给定的用户ID 返回用户名
SELECT USER_NAME(1)

 

以上是关于SQL中常用系统函数的主要内容,如果未能解决你的问题,请参考以下文章

LINQ to SQL 调用 SQL Server 的系统函数

MS SQL系统函数之DATEDIFF

sql中常用的函数

SQL数据库语言基础之SqlServer系统函数聚合集合函数大总结

SQL 常用高级函数大全

SQL 常用高级函数大全