带有Where条件的HSQLDB问题

时间:2014-03-05 11:11:06

标签: hsqldb

我正在使用HSQLDB 1.8.10在Eclipse SWT中工作。我试过的查询是:

SELECT id, name, dept FROM students WHERE name='Sachin' OR name='Prakash' AND dept='ECE'

理想情况下,上述查询应该取得ECE部门的所有学生,其名称为Sachin或Prakash。但是查询没有考虑第三个条件,即它从其他部门获取学生而不仅仅是ECE。而且,如果我查询:

SELECT id, name, dept FROM students WHERE name='Sachin' OR name='Prakash' AND dept='abcdef'

在这里我给了dept作为'abcdef',它仍然取出了与以前相同的记录,即使名字'abcdef'中没有这样的部门。

实际上,

  1. HSQLDB如何与Where条件一起使用?
  2. 如果我们在同一查询中使用'AND'和'OR'条件,我们是否需要做某事
  3. 我试过谷歌和Stackoverflow,但我找不到任何相关的答案。请帮我理解。

1 个答案:

答案 0 :(得分:0)

这是HSQLDB的旧版本。您应该使用最新版本2.3.2。

使用旧版本,尝试将条件括在括号中,看看它是否正常工作

SELECT id, name, dept FROM students WHERE (name='Sachin' OR name='Prakash') AND dept='ECE'