0

次の要件があります。

**---Table A---**
CustID_1   S1    
CustID_1   S2    
CustID_2   S2    
CustID_2   S3    
CustID_3   S4 
CustID_3   S5


**---Table B---**
S1     1
S2     0
S3     1
S4     0
S5     0

すべての BS = 0 であるすべての CustID を選択したいので、上記の場合は CustID_3 のみを選択する必要があります。CustID_1、CustID_2 は少なくとも S=1 であるため、結果には表示されません。

どんな助けにも感謝します。

ありがとう!

4

3 に答える 3

1

これを試してください。Bに存在しないすべての custID と、BS の値が 0の custID を返します。

SELECT
    A.custID
FROM
    A
WHERE
    A.custID NOT IN
    (
        SELECT
            B.custID
        WHERE
            B.S <> 0
    )
于 2011-05-05T19:45:06.877 に答える
1

未テスト:

SELECT custid
  FROM A a1 
 WHERE NOT EXISTS
       (SELECT custid
          FROM A a2 JOIN B ON (a2.col2 = B.col1)
         WHERE B.col2 = 1
           AND a2.custid = a1.custid)
于 2011-05-05T19:17:52.873 に答える
1
SELECT a.CustID
FROM TableA a
  INNER JOIN TableB b ON a.S = b.S
GROUP BY a.CustID
HAVING SUM(b.S) = 0
于 2011-05-05T21:52:09.047 に答える