SqlServer根据字段查询数据,在线等!

比如一个a表有字段address,name,age 如何根据address分类,每个地址提取10条数据?
这是一个视图

第1个回答  2014-10-21
select top 10 * from a 
group by address

这个就是考察sql语句了,从a表查询address字段,按address分类,每类取前10条数据

第2个回答  2014-10-21

按address 分组查询 每组去前10个

select top 10 * from a  group by address

group by 是分组查询, 一般 group by 是和 聚合函数配合使用

group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面

第3个回答  2014-10-21
SELECT address,name,age
FROM
(
    SELECT address,name,age,ROW_NUMBER() OVER (PARTITION BY Addr ORDER BY Addr) AS tag
    FROM a
) AS T
WHERE T.tag<=10

本回答被提问者采纳
相似回答