我有一张类似于此的表格:
images
image_id int
user_id int
datetime datetime
所以,我只需得到一个结果。此结果应具有特定的user_id,并且应该只是表中的最新行。
我已经检查了很多类似的问题,但无法理解如何操作,而且我发现的代码根本不起作用。
我怎样才能做到这一点?
这是一个开始查询:
SELECT *
FROM image
WHERE user_id = :user_id
如何更改此查询以仅选择具有特定user_id的最新行?
答案 0 :(得分:1)
你可以像这样使用order by子句:
SELECT *
FROM image
WHERE user_id = :user_id ORDER BY datetime DESC LIMIT 1
答案 1 :(得分:0)
对于SQL Server,您可以使用:
SELECT TOP(1) *
FROM image
WHERE user_id = :user_id
ORDER BY datetime DESC
答案 2 :(得分:0)
对于MySQL,请尝试以下操作:
SELECT * FROM image
WHERE user_id =:user_id
ORDER BY datetime DESC 限制1
limit
将与MySQL一起使用
有关MySql语句的更多信息,请查看此处:http://dev.mysql.com/doc/refman/5.0/en/sql-syntax.html
答案 3 :(得分:0)
从图像中选择* 其中User_id =:User_id按日期时间DESC排序 限制1
希望它有效:)
答案 4 :(得分:0)
通过使用限制,您可以获得所需的数据
limit required_no.