mysql在select中选择一个值

标签 mysql sql select

我有一个实现消息系统。 我的问题是,我想知道一个用户是否已经与另一个用户有一个线程,如果有,中间值是多少

我有一个 messages_recips 表,看起来像这样

---------------------------     
| mid | seq | uid | status|
|--------------------------
| 4   | 1   | 1   | A     |
| 4   | 1   | 2   | A     |
---------------------------

如果用户 ID 1 有一个用户 ID 为 2 的线程,我将保留 2 行具有相同的中间值。 我知道我可以创建 2 个 sql 来实现我的要求,但我正在尝试在 1 个 sql 中完成。

最佳答案

Waqar Janjua 所述,关键是自连接查询:

SELECT m1.mid
  FROM messages_recips AS m1
  JOIN messages_recips AS m2 ON m1.mid = m2.mid
 WHERE m1.uid = 1
   AND m2.uid = 2

关于mysql在select中选择一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11482940/

相关文章:

mysql - 从csv导入mysql时保留特殊字符

MySQL Join 需要显示 LEFT 表中的所有记录

sql - 使用 SQL IN 和 SQL OR 运算符的 Rails 3 ActiveRecord 查询

javascript - 在 jQuery 中,如何根据从下拉列表中选择的月份来增加年份

python - 让selenium从输入框中选择一个数字python

mysql - 如何改变 Node js 中的授权(权限)级别

MySQL 设计 : Seperate Schema or Table Prefixes?

mysql - 错误代码 : 1064 while trying to retrieve values between timestamps

mysql - 确定用户是否具有各种高级功能

javascript - 进行选择下拉列表而不显示值