php - 用于组合数据的 SQL 查询

标签 php mysql sql

对于以下挑战(对我而言),我将不胜感激。真的很抱歉我的新手问题。

我有下表([USER ID] 在 [Timestamp] 借了名为 [Book Title] 的书):

USER ID | Book Title | Timestamp
--------------------------------
   1    |   Alpha    | 10/10/2007
   2    |   Beta     | 12/02/2010
   3    |   Gama     | 03/05/2011

等我想要的是制作一个包含以下类型行的列表:

UserID A | UserUD B | Book Title| Timestamp

如果有两个[USER ID]借过同一个[书名],我想按上面的方式列出,同时保留最近一次借阅的[时间戳]。

有谁知道如何用 PHP 编写它?

到目前为止,我已经编写了合并借用相同 [Book Title] 的用户的代码,但我还没有想出如何将时间戳附加到这个列表。

如有任何帮助,我将不胜感激。

最佳答案

然后您可以使用 join 执行此操作:

select ft.userid as userid1, ft2.userid as userid2,  ft.booktitle,
       ft2.timestamp
from followingtable ft join
     followintable ft2
     on ft.booktitle = ft2.booktitle and
        ft.timestamp < ft2.timestamp;

关于php - 用于组合数据的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28776649/

相关文章:

php - 在 php 中从空格切换到制表符分隔

mysql - LARAVEL 5.5 外键约束的格式不正确'

PHPUnit 重用 PDO 连接

javascript - 如何将 php 中的 json 数据解析为 jQuery

php - MySQL 必须匹配 2 个表中的两列...否则返回空结果?

php - 在发送到 php 表单验证之前尝试使用 javascript 验证验证码

php - Mysql Right Join 返回不必要的结果

mysql - 如何迭代列值的可能值

sql - 按合适的时间加入表

sql server 如果不存在则插入并获取插入的id到另一个表中