SQL FORMAT()学习笔记
介绍
在SQL中,格式化函数是一种将数值、日期、字符串等数据类型转换为指定格式的函数。其中,FORMAT()函数是一种字符串格式化函数,它可以将一个值格式化为指定的模式。
语法
FORMAT(value, format [, culture])
参数解释:
value: 需要格式化的值。format: 指定的格式。可以是预定义格式,也可以是自定义格式字符串。culture(可选):指定区域设置信息。
实例
格式化数字
下面是一些预定义格式,用于格式化数字:
示例代码:
sqlCopy CodeSELECT FORMAT(12345.6789, 'C', 'en-US') AS Currency; -- $12,345.68
SELECT FORMAT(12345.6789, 'F') AS Fixed; -- 12345.68
SELECT FORMAT(12345.6789, 'N') AS Number; -- 12,345.68
SELECT FORMAT(12345.6789, 'P') AS Percent; -- 1,234,567.89 %
说明:
'C':货币格式。'F':定点格式。'N':数字格式。'P':百分比格式。
格式化日期和时间
下面是一些预定义格式,用于格式化日期和时间:
示例代码:
sqlCopy CodeSELECT FORMAT(GETDATE(), 'd', 'en-US') AS ShortDate; -- 6/5/2023
SELECT FORMAT(GETDATE(), 'D', 'en-US') AS LongDate; -- Sunday, 5 June 2023
SELECT FORMAT(GETDATE(), 't') AS ShortTime; -- 11:51 AM
SELECT FORMAT(GETDATE(), 'T') AS LongTime; -- 11:51:19 AM
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss') AS CustomFormat; -- 2023-06-05 11:51:19
说明:
'd':短日期格式。'D':长日期格式。't':短时间格式。'T':长时间格式。
可以使用自定义格式字符串来指定特定的日期和时间格式。例如,'yyyy-MM-dd HH:mm:ss' 表示以年份、月份、日、小时、分钟和秒钟为单位显示日期和时间。
自定义格式
除了预定义的格式之外,还可以使用自定义格式字符串来格式化值。以下是一些常用的格式:
示例代码:
sqlCopy CodeSELECT FORMAT(1234567.89, '#,##0.00') AS CustomFormat1; -- 1,234,567.89
SELECT FORMAT(1234.5678, '00000.00') AS CustomFormat2; -- 01234.57
SELECT FORMAT('Hello, world!', '##[-]##') AS CustomFormat3; -- He-llo
说明:
#:占位符。0:占位符,并在数字前导填充零。,:千位分隔符。-:负号。[]:字符集。
总结
FORMAT()函数是一种强大的字符串格式化函数,可以将任何类型的值格式化为指定的模式。您可以根据需要选择预定义格式或自定义格式,从而轻松地格式化数字、日期、时间和其他类型的值。