我需要在下面的案例中加上一个案例来检查它们中是否有任何一个='UNRESTICTED',这是我什么时候做的事情
Select
UPPER(CASE table.productnames
WHEN 'product1' THEN TABLE.SOMEPRODUCT1_name
WHEN 'product2' THEN TABLE.SOMEPRODUCT2_name
WHEN 'product3' THEN TABLE.SOMEPRODUCT3_name
WHEN 'product4' THEN TABLE.SOMEPRODUCT4_name
WHEN 'product5' THEN TABLE.SOMEPRODUCT5_name
WHEN 'product6' THEN TABLE.SOMEPRODUCT6_name
WHEN 'product7' THEN TABLE.SOMEPRODUCT7_name
WHEN 'product8' THEN TABLE.SOMEPRODUCT8_name
WHEN 'product9' THEN TABLE.SOMEPRODUCT9_name
END)
我试过了
WHEN 'product1' THEN TABLE.SOMEPRODUCT1_name WHEN 'UNRESTRICTED' THEN 'NEWNAME'
对于每一行,但必须有一种方法,我可以使用嵌套的案例,以允许它检查所有可能的产品名称,并检查它们是否等于'UNRESTRICTED'或由于每个产品是不同的,这是不可能的表中的字段?
答案 0 :(得分:0)
Select
UPPER(CASE table.productnames
WHEN 'product1' THEN TABLE.SOMEPRODUCT1_name
WHEN 'product2' THEN TABLE.SOMEPRODUCT2_name
WHEN 'product3' THEN TABLE.SOMEPRODUCT3_name
WHEN 'product4' THEN TABLE.SOMEPRODUCT4_name
WHEN 'product5' THEN TABLE.SOMEPRODUCT5_name
WHEN 'product6' THEN TABLE.SOMEPRODUCT6_name
WHEN 'product7' THEN TABLE.SOMEPRODUCT7_name
WHEN 'product8' THEN TABLE.SOMEPRODUCT8_name
WHEN 'product9' THEN TABLE.SOMEPRODUCT9_name
WHEN 'UNRESTRICTED' THEN 'NEWNAME'
END)
您不需要为每个案例添加一行,请先查看案例陈述的文档:http://msdn.microsoft.com/en-us/library/ms181765.aspx
答案 1 :(得分:0)
你可以这样做:
Select
REPLACE(UPPER(CASE table.productnames
WHEN 'product1' THEN TABLE.SOMEPRODUCT1_name
WHEN 'product2' THEN TABLE.SOMEPRODUCT2_name
WHEN 'product3' THEN TABLE.SOMEPRODUCT3_name
WHEN 'product4' THEN TABLE.SOMEPRODUCT4_name
WHEN 'product5' THEN TABLE.SOMEPRODUCT5_name
WHEN 'product6' THEN TABLE.SOMEPRODUCT6_name
WHEN 'product7' THEN TABLE.SOMEPRODUCT7_name
WHEN 'product8' THEN TABLE.SOMEPRODUCT8_name
WHEN 'product9' THEN TABLE.SOMEPRODUCT9_name
END)
,'UNRESTRICTED','NEWNAME')