我无法理解错误,因为我没有尝试将变量@FQTROQ转换为数字.
declare @FQTROQ varchar(30)
declare @FQNUTQ decimal(6,0)
set @FQTROQ = 'R-354'
set @FQNUTQ = 100
SELECT ( CASE WHEN (@FQTROQ is not null and @FQTROQ <> '')
THEN ( @FQTROQ )
ELSE ( @FQNUTQ ) END ) AS Numero_Troquel
Run Code Online (Sandbox Code Playgroud)
有帮助吗?谢谢
declare @FQTROQ varchar(30)
declare @FQNUTQ decimal(6,0)
set @FQTROQ = 'R-354'
set @FQNUTQ = 100
SELECT CASE WHEN (@FQTROQ is not null and @FQTROQ <> '')
THEN @FQTROQ
ELSE CAST(@FQNUTQ AS VARCHAR(30)) END AS Numero_Troquel
Run Code Online (Sandbox Code Playgroud)
您需要将 强制转换DECIMAL为 a VARCHAR,以便语句的输出CASE具有相同的输出值。
| 归档时间: |
|
| 查看次数: |
6418 次 |
| 最近记录: |