MySQL 获取两个用户之间的对话

2023-12-23

我有一个名为 private_messages 的 SQL 表,其中包含字段(id、from、to、message、stamp)。 标记字段对应于消息的日期

那么我需要什么查询:

1)获取两个用户之间的对话(按日期排序)?

我已经尝试过查询

(SELECT * FROM private_messages WHERE from=$my_id AND to=$other_id) 
UNION 
(SELECT * FROM private_messages WHERE from=$other_id AND to=$my_id) 
ORDER BY stamp
;

但不起作用...

2)获取我和其他用户之间的最后一条消息,每个消息都有一个不同的用户,按日期排序(例如构建一个像 Facebook 中的收件箱)?


1.)

SELECT  * 
FROM    private_messages a
WHERE   (a.from = $my_id AND a.to = $other_id) OR
        (a.from = $other_id AND a.to = $my_id)
ORDER   BY stamp DESC

2.)

SELECT  f.*
FROM
        (
            SELECT  *
            FROM    private_messages a
            WHERE  (LEAST(a.from, a.to), GREATEST(a.from, a.to), a.stamp) 
                    IN  (   
                            SELECT  LEAST(b.from, b.to) AS x, 
                                    GREATEST(b.from, b.to) AS y,
                                    MAX(b.stamp) AS msg_time
                            FROM    private_messages b
                            GROUP   BY x, y
                        )
        ) f
WHERE   $my_id IN (f.from, f.to)
ORDER   BY f.stamp DESC
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL 获取两个用户之间的对话 的相关文章

  • phpenmod 显示其他 php 版本的路径

    我的 Ubuntu 机器上安装了 php 7 0 和 7 2 当我执行时php v 它告诉我我正在使用 php 7 2 在 Apache 上我还启用了 php 7 2 当我跑步时phpenmode zip 我明白了 WARNING Modu
  • json_decode 到自定义类

    是否可以将 json 字符串解码为 stdClass 以外的对象 不是自动的 但你可以按照老式的路线来做 data json decode json true class new Whatever foreach data as key g
  • 如何在 MacOS 上卸载 Mysql Shell

    我错误地安装了 MySql Shellhttps dev mysql com doc mysql shell 8 0 en https dev mysql com doc mysql shell 8 0 en 在我的 MacBook Pro
  • Google Closure 编译器和 multipart/form-data 不起作用

    我正在向 google 闭包编译器 API 服务发出请求 content file get contents file js url http closure compiler appspot com compile post true p
  • MySql 从另一个表中减去一个表

    我有两个表 A 包含所有数据 表 B 从 A 中随机选择 25 的数据创建 所以 A 和 B 具有完全相同的列 也没有独特的列 我想做的是从 A 中减去 B 有什么想法吗 查看所有行A除了那些在B SELECT FROM A WHERE f
  • 将 jQuery 与 Selenium WebDriver 结合使用 - 如何将 JSON 对象转换为 WebElement?

    我正在使用 Selenium WebDriver 我想执行 jQuery 代码来查找一些元素 我的代码如下 public function uploadGrantDoc script return itemlist grant file u
  • 消除 JPA 标准中子查询产生的冗余连接

    我只需要使用 JPA 标准执行以下 MySQL 查询 获取状态列表 来自state table 基于给定的国家名称 在country SELECT state id state name country id FROM state tabl
  • 部署 dacpac 所需的权限

    我正在尝试使用 sqlpackage exe 在租户上部署 dacpac 目前 我正在向将部署此功能的帐户授予 SysAdmin 或 db owner 权限 并且它工作正常 但在生产中 如果目标租户数据库属于其他应用程序 我可能无法获得这些
  • 如何编写 bash 函数来包装另一个命令?

    我正在尝试编写一个函数包装器mysql command If my cnf存在于 pwd 中 我想自动附加 defaults file my cnf到命令 这就是我正在尝试的 function mysql if e my cnf then
  • zend框架验证模型中的数据而不是表单中的数据

    使用 Zend Framework 2 在我的应用程序中 要编辑数据库中的数据 可以编译 html 表单或发送 http post 请求 我的服务器作为 Web 服务实现 在第二种情况下 不会呈现表单 问题 如果当服务器收到不是从表单发送而
  • 唯一的图像哈希值即使 EXIF 信息更新也不会改变

    我正在寻找一种方法来为 python 和 php 中的图像创建唯一的哈希值 我考虑过对原始文件使用 md5 和 因为它们可以快速生成 但是当我更新 EXIF 信息 有时时区关闭 时 它会更改总和 并且哈希也会更改 有没有其他方法可以为这些文
  • 1:1 关系中的双向外键约束

    我正在使用 MySQL 数据库 在我的关系数据模型中 我有两个相互 1 1 关联的实体 在我的架构中 通过将 FK 字段放入两个表之一中来建立 1 1 关系 该字段与另一个表的 PK 相关 两个表都有 PK 并且都是自动递增的 BIGINT
  • Sublime Text 编辑器中的 PHP 语法检查

    在Gedit中 我可以在当前文档上添加 php l 外部工具 如果我安装了PHP命令行 它将对文档进行语法检查 有没有办法用 Sublime Text 编辑器来做到这一点 注意 我有一台 Mac 并且安装了 PHP CLI 我想我必须将代码
  • PHP 中正确的存储库模式设计?

    前言 我尝试在具有关系数据库的 MVC 架构中使用存储库模式 我最近开始学习 PHP 中的 TDD 并且我意识到我的数据库与应用程序的其余部分耦合得太紧密 我读过有关存储库并使用国际奥委会容器 http laravel com docs 4
  • 如何检测iPhone是否有视网膜显示屏?

    如何检测 iPhone 是否配备视网膜显示屏 有靠谱的办法吗 要么是纯 PHP 要么最好是 Zend Framework 方式来执行此操作 我通过这个弄清楚了 var retina window devicePixelRatio gt 1
  • Symfony2 - 在自定义验证器中调用 EmailValidator

    我正在创建一个自定义验证器约束来验证 联系人 类似于 John Doe 电子邮件受保护 gt 遵循Cookbook http symfony com doc current cookbook validation custom constr
  • 安全地评估简单的数学

    我想知道是否有一种安全的方法来评估数学 例如 2 2 10000 12000 10000 20 2 2 40 20 23 12 无需使用eval 因为输入可以来自任何用户 我需要实现的只是整数的加法和减法 是否有任何已经存在的代码片段 或者
  • MVC 框架中的缓存策略?

    我编写了自己的小型 PHP MVC 框架 现在正在探索 PHP MVC 框架中的缓存策略 我正在考虑可以缓存什么 在哪里以及如何缓存 我的框架是简单的MVC框架 我有前端控制器 它启动应用程序 注册类自动加载 设置 php 运行时指令 最后
  • 将 docker-compose.yml 中的包安装到 docker 容器中

    我是 docker 和 docker compose 的初学者 我需要你的帮助 我正在使用 docker compose 制作 PHP NGINX PostgresQL symfony 开发环境 这里是 web image nginx 1
  • 如何在SqlAlchemy中执行“左外连接”

    我需要执行这个查询 select field11 field12 from Table 1 t1 left outer join Table 2 t2 ON t2 tbl1 id t1 tbl1 id where t2 tbl2 id is

随机推荐

  • 从同时具有私有 IP 和公有 IP 的虚拟机连接到私有 IP 上的 Google Cloud SQL 实例失败

    我正在尝试设置什么 具有私有 IP 的 Cloud SQL 实例 Postgresql 数据库 一台具有 1 个公有 IP 和 1 个私有 IP 且与 SQL 实例位于同一 VPC 网络的虚拟机 虚拟机 SQL 实例和 VPC 均位于同一区
  • ipod nano 开发有哪些选择?

    我的妻子最近买了一个 Nano 我想为它编写一个简单的程序 看来苹果只发布了适用于 iPhone iPod Touch 的 SDK 而没有针对 nano 的能力 创建针对 Nano 的应用程序并将其安装到她的应用程序上有哪些选项 您最好的选
  • 在 Linux 2.4 上以普通用户身份进行原始套接字访问

    在嵌入式系统 2 4 内核 中 我需要从进程对 eth0 接口进行原始套接字访问not以 root 身份运行 我尝试通过从命令行设置 CAP NET RAW 功能并以编程方式使用 cap set proc 来解决此问题 但均未成功 看来我没
  • toLowerCase(char) 方法?

    显然有一个方法接受一个 char 并返回一个 char http download oracle com javase 6 docs api java lang Character html toLowerCase char http do
  • AngularJS 使用 ng-upload 上传图像

    我正在尝试使用 ng upload 在 AngularJS 中上传文件 但遇到了问题 我的 html 看起来像这样 div class create article div
  • 绑定TextBox时如何调用方法

    我想在 EditItemTemplate 中 Bind 一个文本框 但我需要在显示文本框之前将其原始值传递给函数 我的目标是在显示值之前对其进行格式化 这是一个复杂的格式化规则 因此我无法使用任何内置格式化程序 使用 Eval 时很容易做到
  • Ansible 中的幂等性和随机变量

    有没有办法保证使用随机生成变量的剧本的幂等性 例如 我想设置 crontab 以在不同时间触发多个服务器上的电子邮件 因此我使用 ansible 的 set fact 模块创建随机整数 tasks set fact first run 30
  • 野牛转移而不是减少。减少/减少错误

    用我的语言我可以写 a 1 b 2 if true else if true Here is the problem else 我的语法不支持语句之间的换行符 else 只能与 if 一起使用 当我在规则中添加可选NL时 IfExpr IF
  • WPF 将文本从一个窗口传递到另一个窗口

    我有一个主窗口 它有一个按钮 当我按下主窗口按钮时 它将打开子窗口 在子窗口中 我有一个文本框 当我输入文本并单击子窗口中的添加按钮时 文本应显示在主窗口上 我该如何实现这一目标 提前致谢 您可以创建 MainWindow 类的参数化构造函
  • 调试 TestNG 配置失败

    我正在从 Ant 运行 TestNG 我正在使用我自己的测试监听器 我正在重构代码 有一段时间我得到了 testng Total tests run 7 Failures 0 Skips 7 testng Configuration Fai
  • 对重载函数的不明确调用

    我有两个功能 void DoSomething const tchar apsValue void DoSomething size t aiValue 现在我想将 0 作为 size t 传递 DoSomething 0 编译器抛出错误
  • Meteor:“=> 退出,代码:8”错误

    刚刚开始使用 Meteor 按照中提供的教程进行操作发现流星 https www discovermeteor com 实现第 3 章的代码后 我不断收到以下错误 W20150714 18 47 36 539 7 STDERR W20150
  • 优化多个OR查询

    我有一个数据库表 我需要验证用户是否输入了相同或部分相同的信息 这就是我的想法 数据库布局 rec id pk user id name phone address 1 address 2 zip company co phone co a
  • iPhone崩溃日志中的内存地址代表什么意思?

    我今天一直在查看 iPhone 应用程序生成的崩溃日志 Thread 0 Crashed 0 libobjc A dylib 0x3002d7da 0x3002b000 10202 1 UIKit 0x31ec4abc 0x31e4d000
  • 为服务/数据/缓存部署多个实例的好处

    尽管我有很多编写代码的经验 我真的没有太多部署经验 我正在编写一个项目 使用 mongodb 进行持久化 使用 redis 进行元缓存 并使用 play 来提供页面服务 我正在决定是否购买专用服务器 还是从 amazon linode 购买
  • 在 WebViewClient 中启用通用 JavaScript

    在谷歌搜索答案时 似乎我并不是唯一一个遇到似乎无法解决的问题的人 我成功地使用自定义 WebViewClient 创建了一个 WebView 这使得我可以拥有一个进程对话框 并在无法加载 URL 时显示错误消息 但这会给 JavaScrip
  • 出现错误 #1221 - UNION 和 LIMIT 的使用不正确

    我正在尝试使用这两个查询进行联合查询union在查询之间但出现错误 121 UNION 和 LIMIT 的使用不正确 请帮助我进行联合查询以获得这两个查询的结果 query1 SELECT t1 TraineeID t2 attnDate
  • 无需事务即可获取数据

    下面是 spring transaction 的示例代码片段 我的问题 相同的会话将用于获取第 1 行和第 2 行的实体吗 我的理解 我相信是的 这将由春季交易来保证 Transactional public void method1 fe
  • 如何为 f.select 表单字段设置空白值

    我使用以下内容允许我的用户在他们的个人资料中选择他们的性别 如果没有任何内容传递到 user sex 列 我将如何创建列表默认的空白值 我只是将男性或女性作为字符串传递 目的是我想要一个空白值 以便验证可以确保他们知道必须选择它 有两种可能
  • MySQL 获取两个用户之间的对话

    我有一个名为 private messages 的 SQL 表 其中包含字段 id from to message stamp 标记字段对应于消息的日期 那么我需要什么查询 1 获取两个用户之间的对话 按日期排序 我已经尝试过查询 SELE