我有一个复杂的查询,我无法得到正确的答案。
有3张表:
联系人(pk为 INT,名称为 VARCHAR,...)
会话(pk为 INT,联系人为 INT,...)
消息(pk为 INT,会话为 INT,...)
session.contact
指向contact.pk
。_ 并且message.session
到session.pk
.
当session.contact
为零时,则此行没有联系。contact.pk
永远不会为零。
现在我想获取特定消息的所有名称。我的尝试是这样的:
SELECT message.pk, contact.name FROM message, session, contact WHERE message.session = session.pk AND session.contact = contact.pk
但是我没有得到正确的返回行数。应该是2459,有2075。