SELECT BorrowerMemNo AS BMN
FROM Book
WHERE 6=(SELECT COUNT(*)
         FROM Book
         WHERE BorrowerMemNo=BMN);
这样会出来6条相同的纪录但是如果加个distinct
SELECT DISTINCT BorrowerMemNo AS BMN
FROM Book
WHERE 6=(SELECT COUNT(*)
         FROM Book
         WHERE BorrowerMemNo=BMN);
返回为空,一条纪录都没
求问阿,困扰好几天了

解决方案 »

  1.   

    SELECT DISTINCT BorrowerMemNo AS BMN
    FROM Book这个的时候已经不是6条记录了。后面再等于6,那当然是不对了。
      

  2.   

    如果改成0的话有会有结果
    SELECT DISTINCT BorrowerMemNo AS BMN
    FROM Book
    WHERE 0=(SELECT COUNT(*)
             FROM Book
             WHERE BorrowerMemNo=BMN);
    怎么一加distinct差别这么大
      

  3.   

    建议加个GROUP BY 
    SELECT BorrowerMemNo AS BMN
    FROM Book
    WHERE 6=(SELECT COUNT(*)
             FROM Book
             WHERE BorrowerMemNo=BMN) GROUP BY BorrowerMemNo
    这样再试一下.