任何人都可以帮助我在 Apache Derby SQL 中进行 SQL 查询以获得“简单”计数。
给定一个看起来像这样的表 ABC...
美国广播公司 1 1 1 1 2 1 1 2 3 2 1 3 4 2 1 1 ** 5 2 1 2 ** ** 6 2 2 1 ** 7 3 1 2 8 3 1 3 9 3 1 1
如何编写查询来计算“a”的不同值如何同时具有(b=1 和 c=2)和(b=2 和 c=1)以获得正确的结果 1。(标记的两行与条件匹配并且都具有 a=2 的值,此表中只有 1 个不同的 a 值与条件匹配)
棘手的一点是,(b=1 and c=2) AND (b=2 and c=1)
当应用于单行时,它们显然是互斥的。.. 那么如何将该表达式应用于 a 的多行不同值?
这些查询是错误的,但为了说明我正在尝试做的事情......
SELECT DISTINCT COUNT(a) WHERE b=1 AND c=2 AND b=2 AND c=1 ...
(0)不能互斥
SELECT DISTINCT COUNT(a) WHERE b=1 AND c=2 OR b=2 AND c=1 ...
......(3)让我得到错误的结果。
SELECT COUNT(a) (CASE WHEN b=1 AND c=10 THEN 1 END) FROM ABC WHERE b=2 AND c=1
.. (0) 不能互斥
干杯,菲尔。