asp怎么显示这个sql查询出来的记录

来源:百度知道 编辑:UC知道 时间:2024/05/27 21:02:35
SELECT TOP 5 buy.shop_id, Count(*) AS cou
FROM buy
GROUP BY buy.shop_id
ORDER BY cou;
在查询器上可以查询到,并显示一个含有列shop_id和cou,5行数据记录的表格.
但这段语句查出来的东西我用rs("cou"),rs("shop_id")均无内容显示.
我主要是要实现将buy表中的shop_id列的数据分组统计,然后再由大到小输出记录数最多的shop_id,并将记录数输出.
最简单直接点就是要做一个最热销产品的查询~先谢谢了~分不多
去掉order by他就不能排序啊

sql语句改成

select * from
(SELECT TOP 5 shop_id, Count(*) AS cou
FROM buy
GROUP BY shop_id) a
ORDER BY cou;

即可。

SELECT TOP 5 [shop_id], Count(*) AS cou
FROM [buy]
GROUP BY [shop_id]
ORDER BY 2 DESC;

ORDER BY 后面是数字表示第几列。
另外,你在查询分析器中可以的,在程序中应该是一样的结果。你再试试。

SELECT TOP 5 buy.shop_id, Count(*) AS cou
FROM buy
GROUP BY buy.shop_id
ORDER BY cou;

虽然我没运行过,但我觉得这条SQL好像写错了,Count(*) 是聚合函数,buy.shop_id是字段,不能直接这样查

SELECT TOP 5 shop_id,SUM(PRODUCTCOUNT) AS ALLCOUNT FROM buy
GROUP BY shop_id ORDER BY ALLCOUNT ASC

1、可能是 order by的问题。
去掉order by试试。

2、看rs是否与你程序中的一致。