如何在SQL中查找同一表中的双胞胎?
我有一张桌子,上面有:如何在SQL中查找同一表中的双胞胎?,sql,Sql,我有一张桌子,上面有: columnid, firstname, lastname, dob, motherid 现在我必须在这张桌子上找到一对双胞胎,他们的出生日期和母亲身份都一样。如何对此进行查询?您可以与和一起使用-最简单的解决方案是简单的查询非嵌套选择 SELECT firstname, lastname, COUNT(*) FROM mysql_table GROUP BY dob, mothe
columnid, firstname, lastname, dob, motherid
现在我必须在这张桌子上找到一对双胞胎,他们的出生日期和母亲身份都一样。如何对此进行查询?您可以与和一起使用-最简单的解决方案是简单的查询非嵌套选择
SELECT firstname,
lastname,
COUNT(*)
FROM mysql_table
GROUP BY dob,
motherid
HAVING COUNT(*) > 1;
如果您想要多胞胎,您可以:
select t.*
from t
where exists (select 1
from t t2
where t2.motherid = t.motherid and
t2.dob >= t.dob - interval 1 day and
t2.dob <= t.dob + interval 1 day
);
因为分娩不遵守日历惯例,多胞胎可能会在午夜发生。这最多可以在每对双胞胎中找到一对双胞胎。