Sql Where子句返回超出范围的值

Sql Where子句返回超出范围的值,sql,where-clause,Sql,Where Clause,我正试图在一个SQL简介类的家庭作业问题上获得预先确定的结果 编写一个查询,显示“中间件”或“云”主题下所有书籍的书号、标题、主题和成本,按书号排序,成本应超过70美元 我上一次尝试的查询返回了几乎正确的结果,但包含了图书成本为69.95的图书 选择图书数量、图书标题、图书主题、图书成本 从书本上 其中BOOK_成本>70,BOOK_主题='Middleware' 或书籍主题=‘云’ 按书号订购; 我尝试将该值增加到70.01,并在70和括号周围加上引号,例如: WHERE(图书成本>70)

我正试图在一个SQL简介类的家庭作业问题上获得预先确定的结果

编写一个查询,显示“中间件”或“云”主题下所有书籍的书号、标题、主题和成本,按书号排序,成本应超过70美元

我上一次尝试的查询返回了几乎正确的结果,但包含了图书成本为69.95的图书

选择图书数量、图书标题、图书主题、图书成本
从书本上
其中BOOK_成本>70,BOOK_主题='Middleware'
或书籍主题=‘云’
按书号订购;
我尝试将该值增加到70.01,并在70和括号周围加上引号,例如:

WHERE(图书成本>70)
BOOK_SUBJECT='Middleware'或BOOK_SUBJECT='Cloud'
按书号订购;

任何反馈都很好。谢谢。

你需要括号来分隔你的
WHERE
子句。尝试:

其中图书成本>70且(图书主题='Middleware'或图书主题='Cloud')

说明


查询被
分割,因此它实际上意味着:
其中(BOOK\u COST>70和BOOK\u SUBJECT='Middleware')或(BOOK\u SUBJECT='CLOUD')
。这将返回云计算的任何书籍主题,而不考虑成本。希望有帮助

您需要用括号分隔
WHERE
子句。尝试:

其中图书成本>70且(图书主题='Middleware'或图书主题='Cloud')

说明


查询被
分割,因此它实际上意味着:
其中(BOOK\u COST>70和BOOK\u SUBJECT='Middleware')或(BOOK\u SUBJECT='CLOUD')
。这将返回云计算的任何书籍主题,而不考虑成本。希望有帮助

最好在子句中使用,因为它类似于或

.... where  BOOK_SUBJECT IN 
      ('Middleware', 
    'Cloud') and book_cost>70

最好用在子句中,因为它类似于或

.... where  BOOK_SUBJECT IN 
      ('Middleware', 
    'Cloud') and book_cost>70

在布尔表达式中使用括号,以便它们评估您希望它们如何使用。这将解决您的问题。对布尔表达式使用括号,以便它们评估您希望它们的方式。这将解决您的问题。另外-
在('Middleware','Cloud')中预订主题。
另外-
在('Middleware','Cloud')中预订主题。