希望语法选择具有两个可能的列值的结果。
现在我正在 select distinct f1,f2,f3 from table where f3 in ('val1','val2')
并输出文本文件,然后寻找 val1 和 val2 都在同一 f1、f2 的文件中的情况。f3 可以是 val1, val2, val?... 每个值在表中各占一行。谢谢!
希望语法选择具有两个可能的列值的结果。
现在我正在 select distinct f1,f2,f3 from table where f3 in ('val1','val2')
并输出文本文件,然后寻找 val1 和 val2 都在同一 f1、f2 的文件中的情况。f3 可以是 val1, val2, val?... 每个值在表中各占一行。谢谢!
我已经模拟了这张桌子......
...并且我假设您想找到所有
(f1,f2)
具有'val1'
或'val2'
in 的组合f3
。因此,从该表中,您会期望得到组合
(A,B)
,(A,E)
但不是(A,G)
因为最后一个组合不具有'val2'
.首先,获得具有
'val1'
或'val2'
in 的唯一组合f3
。一旦你有了它,然后将前两列的行分组并计算你拥有的每个组合的数量。您想要有两个的组合(必须是
'val1'
和'val2'
):这会让你
对于嵌套查询,这不会非常有效。优化至少在一定程度上取决于数据量、可变性以及您使用的数据库。