带CASE的SQL存储过程
您好,我的存储过程中有一个等式,我在这里使用了两种情况,第一种情况显示正确的值,第二种情况显示TirType字段中只有空值,我不明白是什么问题带CASE的SQL存储过程,sql,sql-server,Sql,Sql Server,您好,我的存储过程中有一个等式,我在这里使用了两种情况,第一种情况显示正确的值,第二种情况显示TirType字段中只有空值,我不明白是什么问题 CREATE VIEW dbo.YUITY SELECT CAST(dbo.SC5116.CODE AS int) AS код, dbo.SC5116.DESCR AS Наименование, CAST(dbo.SC3420.CODE AS int) AS TIR, dbo.SC3420.SP4947 AS Dat
CREATE VIEW dbo.YUITY
SELECT CAST(dbo.SC5116.CODE AS int) AS код, dbo.SC5116.DESCR AS Наименование,
CAST(dbo.SC3420.CODE AS int) AS TIR, dbo.SC3420.SP4947 AS Date,
CASE WHEN SC3420.SP4949 <> ' 0 ' THEN 'ПовышСтрах' ELSE 'ОснСтрах' END AS VID,
CASE WHEN dbo.SC3420.SP9214 = '714' THEN '4v' END AS TirType
FROM dbo.SC3420 INNER JOIN
dbo.SC5116 ON dbo.SC3420.SP3422 = dbo.SC5116.ID
WHERE (dbo.SC3420.SP4947 <> '01.01.1753')
创建视图dbo.YUITY
选择CAST(dbo.SC5116.CODE为int)作为аааа,dbo.SC5116.DESCR作为ааааааааа,
铸造(dbo.SC3420.CODE AS int)为TIR,dbo.SC3420.SP4947为日期,
当SC3420.SP4949为“0”时,则“其他”结束为“VID”,
当dbo.SC3420.SP9214='714'时,则'4v'结束为TirType
从dbo.SC3420内部连接
dbo.SC3420.SP3422上的dbo.SC5116=dbo.SC5116.ID
其中(dbo.SC3420.SP4947'01.01.1753')
不要忘记在案例
之后结束。如果未指定其他值且值不是“714”,则它将返回NULL
CREATE VIEW dbo.YUITY
AS
SELECT CAST(dbo.SC5116.CODE AS int) AS код, dbo.SC5116.DESCR AS Наименование,
CAST(dbo.SC3420.CODE AS int) AS TIR, dbo.SC3420.SP4947 AS Date,
CASE WHEN SC3420.SP4949 <> ' 0 ' THEN 'ПовышСтрах' ELSE 'ОснСтрах' END AS VID,
CASE WHEN dbo.SC3420.SP9214 = '714' THEN '4v' ELSE '' END AS TirType
FROM dbo.SC3420 INNER JOIN
dbo.SC5116 ON dbo.SC3420.SP3422 = dbo.SC5116.ID
WHERE (dbo.SC3420.SP4947 <> '01.01.1753')
创建视图dbo.YUITY
作为
选择CAST(dbo.SC5116.CODE为int)作为аааа,dbo.SC5116.DESCR作为ааааааааа,
铸造(dbo.SC3420.CODE AS int)为TIR,dbo.SC3420.SP4947为日期,
当SC3420.SP4949为“0”时,则“其他”结束为“VID”,
当dbo.SC3420.SP9214='714'时,则'4v'ELSE'以TirType结束
从dbo.SC3420内部连接
dbo.SC3420.SP3422上的dbo.SC5116=dbo.SC5116.ID
其中(dbo.SC3420.SP4947'01.01.1753')
在其他
案例中应显示的内容您在创建视图
之后缺少AS
,在第二个案例陈述中也缺少END
。撇开语法不谈,我怀疑它显示NULL
的原因是因为没有dbo.SC3420.SP9214
等于'714'
的行,我是这样写的,而且它在字段TirType中也给了我NULL值如果在ELSE语句中指定一个值,那么TirType就不会为NULL,我可以把每个值都放进去,这不取决于,但是它给了我所有字段的这个值,但是你能把两个案例放在一个存储过程中吗,或者我怎么能把两个案例组合在一个案例中呢?你可以这样组合案例:当1=2时案例,然后“不可能”,或者当1>2时案例,然后“更多”或者“更少”结束