【发布时间】:2011-05-03 12:00:45
【问题描述】:
我有一张这样的桌子:
列表: id、类型、日期
有没有一种方法只在 MySQL 中返回 type = '1' 但限制为 3 的最新(按日期顺序排列)的计数?
所以问题是,最后 3 项的值类型是 '1' 吗?
【问题讨论】:
标签: mysql
我有一张这样的桌子:
列表: id、类型、日期
有没有一种方法只在 MySQL 中返回 type = '1' 但限制为 3 的最新(按日期顺序排列)的计数?
所以问题是,最后 3 项的值类型是 '1' 吗?
【问题讨论】:
标签: mysql
表中最近 3 个条目中类型为 1 的项目的计数。
SELECT COUNT(*) FROM (
SELECT type FROM mytable ORDER BY date DESC LIMIT 3
) as t1
WHERE t1.type = 1;
我想这就是你所追求的。
【讨论】:
类型 1 的最后 3 个日期,逆 date 顺序:
SELECT *
FROM mytable
WHERE type = 1
ORDER BY
date DESC
LIMIT 3
类型 1 的最后 3 个日期,以date 顺序排列:
SELECT *
FROM (
SELECT *
FROM mytable
WHERE type = 1
ORDER BY
date DESC
LIMIT 3
) q
ORDER BY
date
反向date顺序的连续类型1项目数:
SELECT COUNT(*)
FROM mytable
WHERE (date, id) >
(
SELECT date, id
FROM mytable
WHERE type <> 1
ORDER BY
date DESC
LIMIT 1
)
【讨论】: