0
Почему эти простые запросы возвращают разные результаты? Только diff - @val
.SQL Server - Diff результат простого глупого запроса?
Запрос # 1:
DECLARE @val NVARCHAR
BEGIN
SET @val = '0320'
SELECT 1
WHERE CAST(SUBSTRING(@val, 3, 2) AS INT) + 2000 < YEAR(GETDATE())
END
Запрос # 2:
SELECT 1
WHERE CAST(SUBSTRING('0320', 3, 2) AS INT) + 2000 < YEAR(GETDATE())
, потому что 'NVARCHAR' без длины =' NVARCHAR (1) ' – Devart
Потому что вы только литье' @ val' как 'NVARCHAR (1)', то есть единственное, что она хранящий в своей стоимости, '» 0''. Нижний запрос имеет полную строку. – Siyual
проклятье! теперь я понял ... спасибо за помощь глупым людям в этом. – Sak