我在学校学习SQL,并且对特定查询感到难过。我们正在使用AdventureWorks2014数据库,问题是: “营销部门想知道Road-650自行车目前是否有超过10种款式。使用产品表,使用IF THEN逻辑创建一个声明来触发是否有多于或少于10个Road-650自行车单元可用。提交语句和查询结果。“
我为自行车找到了30的ProductModelID,我可以看到有12个结果,但我甚至很难开始查询。任何帮助,将不胜感激!谢谢!
据我所知,到目前为止,IF语句不起作用,我得到错误。
USE Adventureworks2014
SELECT
COUNT(ProductModelID) AS 'Styles'
FROM
Production.Product
WHERE
ProductModelID = 30
GO
IF Styles >= 10
PRINT 'More than 10 styles available'
ELSE
PRINT 'Less than 10 styles available';
答案 0 :(得分:0)
这是盲人的帮助
如果你是新的,基本上,IF ELSE语句是这样的(无处不在)
IF(条件)
然后(真实陈述)
ELSE(虚假陈述)
END IF
在询问之前尝试谷歌一些。人们会欣赏你的努力,而不仅仅是随意提问而不进行研究。 祝你好运答案 1 :(得分:0)
您可以将计数分配给变量:
USE Adventureworks2014
DECLARE @NumStyles INT
SELECT @NumStyles = COUNT(ProductModelID) AS 'Styles'
FROM Production.Product
WHERE ProductModelID = 30
IF @NumStyles >= 10 BEGIN
PRINT 'More than 10 styles available'
END ELSE BEGIN
PRINT 'Less than 10 styles available'
END
或者您可以在if语句中执行此操作:
IF EXISTS (SELECT COUNT(*)
FROM Production.Product
WHERE ProductModelID = 30
HAVING COUNT(*) >= 10) BEGIN
PRINT 'More than 10 styles available'
END ELSE BEGIN
PRINT 'Less than 10 styles available'
END