如何使用多个连接和子句编写查询?

时间:2017-06-05 17:20:35

标签: group-by left-join inner-join where-clause having-clause

获取EST_ID = 10且VALUE = 0且EST_ID = 11且VALUE = 1的所有B_NAME如果EST_ID存在。

在下面的示例中,输出应为B1,B2。 B4不应该被选中,因为它有EST_ID = 12。

ID  B_ID     B_NAME           EST_ID               VALUE
1      1          B1              10                0
2      1          B1              11                1
3      2          B2              10                0
4      3          B3              10                1
5      3          B3              11                0
6      4          B4              10                0
7      4          B4              11                1
8      4          B4              12                1

1 个答案:

答案 0 :(得分:0)

我不知道您的查询结果是什么,但您应该尝试在查询结尾处添加此内容:

GROUP BY B_ID HAVING ((EST_ID=10 AND VALUE =0) || (EST_ID=11 AND VALUE =1)) AND B_ID <> 4