Php MySQL:从列和所有行的计数中选择最后一个(最大)值
如何从单个查询中的列和所有行的计数中选择最后(=最大)值Php MySQL:从列和所有行的计数中选择最后一个(最大)值,php,mysql,Php,Mysql,如何从单个查询中的列和所有行的计数中选择最后(=最大)值 ID ITEM_ID VALUE 1 1 100 2 1 101 3 2 201 4 3 333 5 2 222 6 1 111 我想为特定项_ID选择last/max值,并对具有此ID的所有行进行计数
ID ITEM_ID VALUE
1 1 100
2 1 101
3 2 201
4 3 333
5 2 222
6 1 111
我想为特定项_ID选择last/max值,并对具有此ID的所有行进行计数。
对于项目_ID=1,因此:
VALUE COUNT
111 3
我的问题是这样的:
SELECT (SELECT COUNT(*) FROM table) AS count, (SELECT value FROM table ORDER BY id DESC LIMIT 1) AS value FROM table WHERE item_id = 1 LIMIT 1
它工作,但看起来。。。奇怪的有更好(更简单/更快)的解决方案吗?谢谢在获取
MAX()
和COUNT()
的同时,您需要在项目ID
列上执行分组操作
select max(value) as `VALUE`,
count(*) as `COUNT`
from your_table
group by ITEM_ID;
我仍然对上一学期感到困惑。我想前者需要一个变量。@amenadiel,我相信OP是指每个项目的最大值。这就是他所说的最后一个值。是的,特定项目的最后一个值总是它的最大值。谢谢Rahul,这很有效。