当前位置:  开发笔记 > 编程语言 > 正文

SQL Server - 来自简单愚蠢查询的差异结果?

如何解决《SQLServer-来自简单愚蠢查询的差异结果?》经验,为你挑选了1个好方法。



1> 小智..:

因为您尚未声明NVARCHAR变量的大小,所以在第一个示例中,内容@val为"0",而不是"0320".

要解决此问题,请使用DECLARE @val NVARCHAR(10).

DECLARE @val NVARCHAR(10)
BEGIN
  SET @val = '0320'
  SELECT 1
  WHERE CAST(SUBSTRING(@val, 3, 2) AS INT) + 2000 < YEAR(GETDATE())
END

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有