首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

收藏此问题 发表新评论

如何取表里的最后100行的数据

表A 中有元素id, total,比如.
TABLE A:
id                        total
1                           100
2                            100
3                             340
  :                               :
想按id逆序排列,取出最后100列的total=100的数量
SELECT COUNT(total) from A  where total=100 IN (SELECT total from A ORDER BY id DESC LIMIT 0,100);
为什么不行啊?
昵称: ccipfang  时间: 2008-07-24 23:15:00
select * from A where total = 100 order by id desc limit 100;
昵称: devotedsky  时间: 2008-07-25 08:45:00
楼上的,我是想显示total=100的数量,比如说最后100行中有20个total=100,那输出结果就显示20
昵称: ccipfang  时间: 2008-07-25 16:57:00
try this.

SELECT COUNT(*) from A  where total=100 and id IN (SELECT idl from A ORDER BY id DESC LIMIT 100);
昵称: coolstr  时间: 2008-07-25 17:34:00
还是提示Requete erronee
昵称: ccipfang  时间: 2008-07-25 17:57:00
select count(*) from (select * from A order by id desc limit 123)a where a.total = 100;

[ 本帖最后由 devotedsky 于 2008-7-25 19:19 编辑 ]
昵称: devotedsky  时间: 2008-07-25 19:09:00
这下是真要下班了,爬走。

[ 本帖最后由 devotedsky 于 2008-7-25 19:20 编辑 ]
昵称: devotedsky  时间: 2008-07-25 19:12:00
现在可以了非常感谢.
昵称: ccipfang  时间: 2008-07-25 20:15:00
还想知道如果不是mysql5.0,比如是version 3.23 ,4.0这些版本底的要如何实现啊
昵称: ccipfang  时间: 2008-07-25 21:32:00
DING
昵称: ccipfang  时间: 2008-07-28 21:34:00
引用:
原帖由 coolstr 于 2008-7-25 17:34 发表
try this.

SELECT COUNT(*) from A  where total=100 and id IN (SELECT idl from A ORDER BY id DESC LIMIT 100);
多写了一个字母
复制PHP内容到剪贴板
PHP代码:
SELECT COUNT(*) from A  where total=100 and id IN (SELECT id from A ORDER BY id DESC LIMIT 100);

昵称: coolstr  时间: 2008-07-28 23:16:00
mysql 3.23下面我都是用两条语句实现

e.g.

1、先取最后100条的最小ID,
复制PHP内容到剪贴板
PHP代码:
select id from A order by id desc limit 100;

取最后一个id,如:$id = 222;
2、
复制PHP内容到剪贴板
PHP代码:
$sql "SELECT COUNT(*) from A  where total=100 and id > $id";

昵称: coolstr  时间: 2008-07-28 23:19:00
谢谢
昵称: ccipfang  时间: 2008-07-29 06:07:00