php - MySQL php - 如何获取最后 3 行但不计算重复项

标签 php mysql

您好,我想获取最后 3 个唯一行,但也允许返回具有相同文件名的任何重复项。在下面的示例中,我应该返回 5 行。

所以我应该得到 visa2 f9ed287 visa1 f9ed287 visa f9ed287 rose 996fa07feel e96ba65

Emo Table
---------

id  | s     | filename
----------------------
59  | visa2 | f9ed287
58  | visa1 | f9ed287
57  | visa  | f9ed287
56  | rose  | 996fa07
55  | feel  | e96ba65
54  | kick  | c716cea
53  | yay   | 8e1ff5d

这是我正在使用的代码,结果中不包含重复项

$statement = $pdo->prepare("SELECT s, f FROM emos
                             GROUP BY (f)
                             ORDER BY id DESC                                 
                             LIMIT 3");
$statement->execute(array($room));

最佳答案

尝试使用此查询:

SELECT e.s, e.filename 
FROM emos e
INNER JOIN (SELECT filename FROM emos GROUP BY filename ORDER BY id desc LIMIT 3) as t ON t.filename = e.filename

关于php - MySQL php - 如何获取最后 3 行但不计算重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28472126/

相关文章:

php - 如何在 PHP 中将数据库 URL 显示为网页 URL

mysql - 如何显示不同值的计数并包含零?

PHP 在某些点拆分字符串

php - 更新在 mysql 中不起作用

php - 如何根据mysql中的日期条件多次获取相同的记录?

php - PHP 中的基本通知系统

php - 安装了 Memcached(理论上),PHP 无法使用 memcache_connect()

php - mysql 将数据存储在多个表中还是合并?

android - 创建一个可以与 Web/iOS/Android 一起工作的数据库

java - 如何解决此通信链路故障?