这个函数和TRY_PARSE一起从SQL Server 2012引入。它的存在是因为TRY_PARSE一旦遇到无法成功转换就会以NULL值返回,而如果你希望以报错的形式,你就可以用PARSE。

比如

SELECT PARSE('a' AS int) 

报错消息

Msg 9819, Level 16, State 1, Line 92
Error converting string value 'a' into data type int using culture ''.

 

还有一点,它是支持指定culture的。有什么用呢? 比如美国对时间写法是m/d/yyyy,英国是d/m/yyyy

SELECT PARSE ('01/03/2012' AS DATETIME USING 'en-GB') AS GBDate
SELECT PARSE ('01/03/2012' AS DATETIME USING 'en-US') AS USDate
SELECT PARSE ('01/03/2012' AS DATETIME ) AS USDate

结果

2012-03-01 00:00:00.000
2012-01-03 00:00:00.000
2012-01-03 00:00:00.000

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-19
  • 2021-07-07
  • 2021-07-06
  • 2021-12-27
  • 2021-09-05
猜你喜欢
  • 2022-01-23
  • 2021-10-24
  • 2021-04-12
  • 2021-08-10
  • 2021-09-02
  • 2022-03-10
  • 2022-12-23
相关资源
相似解决方案