对不起,我对mysql很陌生,所以请耐心等待。假设我有
main other
teacherloh@gmail.com 1
teacherken@gmail.com 2
teacherhoh@gmail.com 3
teacherjoe@gmail.com 2
teachersoh@gmail.com 4
teacheroh@gmail.com 5
由于 teacherken@gmail.com 和 teacherjoe@gmail.com 具有相同的other
值,即 2。我想选择并返回这两封电子邮件。
我试过使用
SELECT GROUP_CONCAT(DISTINCT main) as main_set, other
FROM yourTable
GROUP BY other
HAVING GROUP_CONCAT(DISTINCT main)='A,B';
这对我的情况不起作用。
知道吗?
我认为一个简单的where
就足够了:
SELECT t.*
FROM yourTable *
WHERE t.other = 2;
如果您正在寻找重复项,您可以执行以下操作:
SELECT other, GROUP_CONCAT(DISTINCT main) as main_set
FROM yourTable t
GROUP BY other
HAVING COUNT(DISTINCT main) > 1;
我不知道DISTINCT
是否有必要。 如果原始表不能有重复项,请删除DISTINCT
。