$query="SELECT title, max(postid) FROM post";
PostID 是一个递增的数值(1,2,3...)
。目前,最高值是 49
,但它正在拉高 1。它似乎忽略了MAX语句。
否则其他一切都很好。
这不是有效的语法,哪个引擎在运行它?
您需要:
SELECT title, max(postid) FROM post GROUP BY title;
获取多条记录,每个标题一条,显示每个标题的最大 PostID,或
SELECT max(postid) FROM post
以从表中获取单个最大邮政 ID。
如果你想要最高的postid和随之而来的标题,你需要
SELECT TOP 1 title, postid FROM post ORDER BY postid DESC
或
SELECT title, postid FROM post ORDER BY postid DESC LIMIT 1
具体取决于您的 SQL 引擎。
一件重要的事情是,MAX函数中使用的字段应该是INT类型
然后它会给出准确的结果:
SELECT title, max(postid) FROM post GROUP BY title
Postid 应该是一个整数。
你试过吗:
SELECT title, max(postid) FROM post GROUP BY title
我本来希望您使用的任何 sql 引擎都会响应错误,而您的语句中没有 group by 子句。但是,如果 GROUP BY 以某种方式隐含在您的代码中的其他地方,您应该从 select 子句中删除"title"(因为我希望"title"无论如何都只与一个帖子相关联)。在这种情况下,如果您只是期望从post表中获得最大postid,则语句应为:
SELECT max(postid) FROM post