数据中有以下字段
id category title BuildDate其中 category为分类的标示,类别为 1,2,3,4
每类都有数据多条
用sql语句查询
结果限制为16条,根据category分类,每类有4条
例如查出来的是:
20 1 测试 2008-04-05
20 1 测试 2008-04-05
20 1 测试 2008-04-05
20 1 测试 2008-04-0520 2 测试 2008-04-05
20 2 测试 2008-04-05
20 2 测试 2008-04-05
20 2 测试 2008-04-0520 3 测试 2008-04-05
20 3 测试 2008-04-05
20 3 测试 2008-04-05
20 3 测试 2008-04-0520 4 测试 2008-04-05
20 4 测试 2008-04-05
20 4 测试 2008-04-05
20 4 测试 2008-04-05这样的查询,用sql语句可以实现么?
请各位大虾指教.谢谢
id category title BuildDate其中 category为分类的标示,类别为 1,2,3,4
每类都有数据多条
用sql语句查询
结果限制为16条,根据category分类,每类有4条
例如查出来的是:
20 1 测试 2008-04-05
20 1 测试 2008-04-05
20 1 测试 2008-04-05
20 1 测试 2008-04-0520 2 测试 2008-04-05
20 2 测试 2008-04-05
20 2 测试 2008-04-05
20 2 测试 2008-04-0520 3 测试 2008-04-05
20 3 测试 2008-04-05
20 3 测试 2008-04-05
20 3 测试 2008-04-0520 4 测试 2008-04-05
20 4 测试 2008-04-05
20 4 测试 2008-04-05
20 4 测试 2008-04-05这样的查询,用sql语句可以实现么?
请各位大虾指教.谢谢
fox example
select a.* from tt a
where id in(select top 4 id from tt b where b.name=a.name)
就是每类的多条数据中取四条(按什么排序无所谓)
这样一共是四类,取16条用一个sql语句来实现谢谢
谢谢
where id in(select top 4 id from tt b where b.category=a.category)
你可以试试,不知道MYSQL是否支持TOP,在JET SQL下是没有问题的
可是还是不行,mysql好像不支持 top ……
谢谢
这种形式是否支持
select a.* from tt a
inner join
(SELECT TOP 4 ID FROM TT WHERE category=1 ) b
on a.id=b.id
这种形式是否支持
mysql不支持 top 这个函数
单用 SELECT TOP 4 ID FROM TT
都是不可以的没办法,我用 union 来联合了
结贴了,谢谢大家
晕,本来是想 WWWWA 和 WWWWB 一人五十分的
可是,看错了,把两个人看成一个人了……
不好意思了 WWWWA,好像结贴后就不能更改给分了