求一个sql语句~~~~~~
地区 色系名 次数
北部地区 裸色系1
东部地区 红色系2
东部地区 粉色系1
东部地区 裸色系1
东部地区 紫色系1
华中地区 粉色系2
华中地区 红色系1
现在我要得到每个地区次数最多的一个色系,求思想或语句~~~~~
结果
地区 色系名 次数
北部地区 裸色系1
东部地区 红色系2
华中地区 粉色系2
[解决办法]
select 地区,色系名,max(次数) from tb group by 地区,色系名
[解决办法]
SELECT ROW_NUMBER() OVER (PARTITION BY 地区 ORDER BY 次数 DESC) AS num FROM dbo.aWHERE num=1
[解决办法]
CREATE TABLE TABLE5( Col1 INT, Col2 VARCHAR(10), Col3 VARCHAR(10))GOINSERT INTO TABLE5SELECT 5, '华中地区', '红色系' UNIONSELECT 9, '华中地区', '粉色系' UNIONSELECT 10, '华中地区', '粉色系' UNIONSELECT 6, '东部地区', '红色系' UNIONSELECT 1, '东部地区', '红色系' UNIONSELECT 2, '东部地区', '紫色系' UNIONSELECT 3, '东部地区', '粉色系' UNIONSELECT 4, '北部地区', '裸色系' UNIONSELECT 1, '东部地区', '裸色系'WITH table1 as (SELECT Col2,Col3,COUNT(1) AS numFROM Table5GROUP BY Col2,Col3)SELECT Col2,Col3,numFROM TABLE1 AS BWHERE num >= ALL(SELECT num from TABLE1 as A WHERE A.Col2 = B.col2)
[解决办法]
借用4楼的测试数据
CREATE TABLE TABLE5( Col1 INT, Col2 VARCHAR(10), Col3 VARCHAR(10))GOINSERT INTO TABLE5SELECT 5, '华中地区', '红色系' UNIONSELECT 9, '华中地区', '粉色系' UNIONSELECT 10, '华中地区', '粉色系' UNIONSELECT 6, '东部地区', '红色系' UNIONSELECT 1, '东部地区', '红色系' UNIONSELECT 2, '东部地区', '紫色系' UNIONSELECT 3, '东部地区', '粉色系' UNIONSELECT 4, '北部地区', '裸色系' UNIONSELECT 1, '东部地区', '裸色系'
[解决办法]