问题获得最近日期的最后记录 - PHP

时间:2017-01-05 20:01:51

标签: php mysql phpmyadmin

正如标题所说我试图获取该记录时遇到此问题,我的查询直接在PHPMyAdmin中工作,但是当我在PHP代码中使用它时,它获得了第二个记录

我的倒数第二记录包含以下值:

id_record = 17292 id_user = 6 my_date = 2016-12-31 11:09:08

我的最后记录:

id_record = 17618 id_user = 6 my_date = 2017-01-05 13:37:21

这是我用来实现此目的的查询

SELECT id_record FROM my_table WHERE my_date = (SELECT MAX(my_date) FROM my_table WHERE id_user = 6 ORDER BY id_record DESC LIMIT 1)

当我直接在PHPMyAdmin中使用此查询时,它可以正常显示标识为17618的记录,但在PHP中的代码中它可以工作,但它获得了第二个最后一条记录(17292),我有不知道为什么会发生这种情况,你有什么想法吗?我希望你能帮助我,谢谢。

这是PHP代码

$last_record = mysql_query("SELECT id_record FROM my_table WHERE my_date = (SELECT MAX(my_date) FROM my_table WHERE id_user = 6 ORDER BY id_record DESC LIMIT 1)") or die (mysql_error());
$last_record = mysql_fetch_assoc($last_record);
$last_record = $last_record['id_record'];

1 个答案:

答案 0 :(得分:0)

为什么使用子查询?你可以直接选择最后一条记录:

SELECT id_record 
FROM my_table 
WHERE id_user = 6 
ORDER BY id_record DESC
LIMIT 1;