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)

原文地址:https://www.cnblogs.com/feiquan/p/8647590.html