【发布时间】:2015-03-08 10:49:38
【问题描述】:
我正在使用连接从两个表中获取消息
表格消息: ID、发件人、收件人、消息、密码
Table OwnMessages: ID、发件人、收件人、消息、密码
查询:
SELECT DISTINCT(Messages.ID) as F_id,
Messages.Message as F_message,
Messages.Password as F_password,
Messages.Receiver as F_receiver,
OwnMessages.ID as O_id,
OwnMessages.Message as O_message,
OwnMessages.Password as O_password,
OwnMessages.Sender as O_sender
FROM Messages
JOIN OwnMessages on Messages.Receiver = OwnMessages.Sender
WHERE Messages.Receiver = 8 AND OwnMessages.Sender = 8
Messages 表中的所有内容都正确显示,但从 OwnMessages 表中我得到了第一行 30 次。有什么想法吗?
【问题讨论】:
-
distinct是 NOT 一个函数。它适用于select列表的所有 列。 -
我也试过没有不同的,得到了完全相同的结果
-
也许 OwnMessages 中有不同值的列(此处未选择)?
-
如果您添加一些示例表数据和当前结果和想要的结果,帮助您会容易得多!
-
我建议您删除此问题并提出另一个问题。从样本数据和您想要达到的结果开始。您的查询工作并且完全按照它的设计目的进行。你只是没有表达你真正想要做什么。无效的查询通常不会传达该信息。