为每列获取一行

时间:2017-03-24 23:14:20

标签: php mysql select pdo

我收到来自用户ID 1(5),2(1),3(1)的消息。 (括号表示每个用户ID的消息数)

嗨,这是我的代码:

$stmt = $dbh->prepare("SELECT * FROM messages WHERE user_id = :user_id ORDER BY id DESC");

我有用户ID 123的消息。但是对于有多个消息(如用户ID 1)的用户,我只想选择来自用户ID 1的最新消息而不是所有五封消息,我想从用户ID 2中选择最新消息3。我怎样才能做到这一点?感谢。

1 个答案:

答案 0 :(得分:1)

添加" LIMIT 1"我相信对你的查询会有所帮助。

$stmt = $dbh->prepare("SELECT * FROM messages WHERE user_id = :user_id ORDER BY id DESC LIMIT 1");