0

我有一个问题,我希望有人可以帮助我。

我有一个包含以下列的表(消息)

user_one
user_two
ip
time
user_one_deleted
user_two_deleted

所以基本上我需要做的是检查我的 id 是否在 user_one 或 user_two 字段中.. 如果在 user_one 字段中找到我的 id 检查 user_one_deleted = 0 然后返回结果,如果它 = 1 然后跳过它.....如果在 user_two 字段中找到我的 id 然后检查 user_two_deleted = 0 然后返回结果,如果它 = 1 然后跳过它。

我希望这是有道理的,我试图理解它,但我对 MySQL 没有那么多的经验。

任何帮助将不胜感激。

干杯,

4

2 回答 2

3

尝试:

SELECT *
FROM   messages
WHERE ( user_one = yourid AND user_one_deleted = 0 )
   OR ( user_two = yourid AND user_two_deleted = 0 )  
于 2013-06-14T15:04:26.253 回答
2

对我来说听起来可行。假设您要检查的 ID 存储在 $id 中,这应该可以:

"SELECT * FROM messages
    WHERE ( `user_one` = $id AND `user_one_deleted` = 0 )
    OR ( `user_two` = $id AND `user_two_deleted` = 0 );"

运行该查询,您应该得到结果。

于 2013-06-14T15:05:03.707 回答