首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >纠正这个案例表达吗?

纠正这个案例表达吗?
EN

Stack Overflow用户
提问于 2020-05-15 16:21:19
回答 2查看 282关注 0票数 0

我收到了以下code.What的语法错误--我做错了吗?

这是一系列的问题。我在#4 (其他所有的执行都是正确的)。

  1. 市场部想知道路标650的自行车目前是否有10种以上的款式。使用Product,使用IF然后逻辑创建一个语句来触发现有的Road-650自行车单元中是否有10台以上或少于10台。提交语句和查询结果。
  2. 市场营销部决定,在促销活动中只使用黑色公路--650辆自行车。然而,营销部门可能希望在稍后的日期修改销售。使用声明和SET语句预先将可变颜色设置为“黑色”。使用该变量,运行一个查询来显示所有类型的自行车,包括所有字段。
  3. 在问题2活动的基础上,添加"Quantity“和”ListPrice“。将结果过滤到“成品存储”中的仅项目。
  4. 在问题三的基础上,营销部决定,任何目前库存超过100台的产品,将以10%的价格贴现。作为促销活动的一部分,所有其他产品将有5%的折扣。创建一个CASE语句,将"ListPrice“修改为一个名为”SalesPrice“的新字段。
代码语言:javascript
复制
DECLARE @color varchar(20)
SET @color = 'black'

SELECT 
    Quantity, ListPrice,
    CASE
       IF Quantity > 100 THEN ListPrice - (ListPrice * .10)
       IF Quantity < 100 THEN ListPrice - (ListPRice * .05)
       ELSE NULL
    END AS SalesPrice
FROM 
    Production.Product
INNER JOIN
    Production.ProductInventory ON Production.ProductInventory.ProductID = Production.Product.ProductID
WHERE 
    color = @color 
    AND LocationID

错误:

关键字'IF‘附近的不正确语法 关键字“the”附近的不正确语法 关键字“the”附近的不正确语法

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-15 16:27:54

您的案例陈述应该如下所示:

代码语言:javascript
复制
CASE
WHEN Quantity > 100 THEN ListPrice - (ListPrice * .10)
ELSE  ListPrice - (ListPRice * .05)
END AS SalesPrice

请记住,当数量等于100时,原始语句实际上没有响应,并且将返回NULL。我不认为那是我想要的行为。

票数 1
EN

Stack Overflow用户

发布于 2020-05-15 16:25:56

将IF更改为何时

代码语言:javascript
复制
CASE
WHEN Quantity > 100 THEN ListPrice - (ListPrice * .10)
WHEN Quantity < 100 THEN ListPrice - (ListPRice * .05)
ELSE NULL
END AS SalesPrice
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61823923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档