SQL SERVER 2012新增函数之字符串函数FORMAT详解
前言
本文主要介绍的是使用FORMAT函数将日期/时间和数字值格式化为识别区域设置的字符串。下面话不多说,来看详细的介绍吧。
格式如下:
format(value,format,culture)
第一个参数是要格式化的值,第二个是格式,第三个是区域,比如是中国,还是美国,还是大不列颠等等。
FORMAT依赖于.NETFramework公共语言运行时(CLR)的存在。
declare@datedatetime='2014-01-01' selectFORMAT(@date,'d','en-US')as'USEnglishResult' ,FORMAT(@date,'d','en-gb')as'GreatBritainEnglishResult' ,FORMAT(@date,'d','de-de')as'GermanResult' ,FORMAT(@date,'d','zh-cn')as'SimplifiedChinese(PRC)Result'; selectFORMAT(@date,'D','en-US')as'USEnglishResult' ,FORMAT(@date,'D','en-gb')as'GreatBritainEnglishResult' ,FORMAT(@date,'D','de-de')as'GermanResult' ,FORMAT(@date,'D','zh-cn')as'Chinese(SimplifiedPRC)Result'; /* USEnglishResultGreatBritainEnglishResultGermanResultSimplifiedChinese(PRC)Result ------------------------------------------------------------------------------------------------------------------------- 1/1/201401/01/201401.01.20142014/1/1 USEnglishResultGreatBritainEnglishResultGermanResultChinese(SimplifiedPRC)Result ------------------------------------------------------------------------------------------------------------------------- Wednesday,January01,201401January2014Mittwoch,1.Januar20142014年1月1日 */
实例介绍
如果说我想要得到'2014年01月01日的结果,怎么得到呢?
selectFORMAT(@date,'yyyy年MM月dd日','zh-cn')as当前日期 /* 当前日期 -------------------- 2014年01月01日 */
FORMAT除了日期以外,还可以处理一些数字格式和货币格式类型的转换
ifobject_id('[tb]')isnotnulldroptable[tb] createtable[tb]([id]int,[NumericValue]numeric(3,2)) insert[tb] select1,1.26unionall select2,2.78unionall select3,9.83 select*, FORMAT([NumericValue],'G','en-us')as'GeneralFormat', FORMAT([NumericValue],'C','en-us')as'CurrencyFormat', FORMAT([NumericValue],'G','de-de')as'GeneralFormat', FORMAT([NumericValue],'C','de-de')as'CurrencyFormat' from[tb] /* idNumericValueGeneralFormatCurrencyFormatGeneralFormatCurrencyFormat --------------------------------------------------------------------------------------------- 11.261.26$1.261,261,26 22.782.78$2.782,782,78 39.839.83$9.839,839,83 */
指定德国区域性后,小数点变成逗号了,估计做过欧美外包的部分朋友在编程的过程也遇到过类似问题。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。