mysql - 列出所有发送或接收消息的用户

标签 mysql

我有一个表“消息”。

字段是:

- id (primary key, int, auto increment)
- uid (the user who sent the message)
- rid (the user who received the message)
- text (text of the message)
- time (time of message)
- read (read or unread. 0 is unread, 1 is read).

作为一个用户来说,我可以是UID,也可以是RID。因此,如果我想显示我发送/接收消息的用户列表,我该怎么做?另外,每个用户应该只显示一次。请帮忙。谢谢。 :)

最佳答案

一种可能的方法是使用 UNION(而不是 UNION ALL),以便删除重复的行:

SELECT uid FROM messages WHERE rid = 'me'
UNION
SELECT rid FROM messages WHERE uid = 'me'

关于mysql - 列出所有发送或接收消息的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14029044/

相关文章:

mysql - 使用 MySQL 在每个组中运行总计

javascript - chop 不正确的 double (nodejs)

javascript - 使用 node.js 将多行插入到 mysql

php - 插入重复更新 .. WHERE foreign_key_id = foreign_key_id

php - 将 whereIn 与 Laravel 中单独查询的值一起使用

mysql - 使用 vagrant 提供简单的 mysql 设置(使用 shell provisioner)

php - 当显示多行时如何更新mysql行

php - Mysql - 数据库中有很多数据

php - HTML 标签格式化 php 和 MySQL

php - 在 MySQL 中比较字符串时遇到问题