类别 名称 数量
家具 桌子 1
家具 椅子 2
电器 电视 1
电器 冰箱 1
食品 薯片 3
---------------------------------------------结果为
类别 名称 数量
家具 桌子 1
家具 椅子 2
-----------------------
类别 名称 数量
电器 电视 1
电器 冰箱 1
-----------------------
类别 名称 数量
食品 薯片 3-----------------------------
这样可以实现吗?如果可以怎么实现???在线等
家具 桌子 1
家具 椅子 2
电器 电视 1
电器 冰箱 1
食品 薯片 3
---------------------------------------------结果为
类别 名称 数量
家具 桌子 1
家具 椅子 2
-----------------------
类别 名称 数量
电器 电视 1
电器 冰箱 1
-----------------------
类别 名称 数量
食品 薯片 3-----------------------------
这样可以实现吗?如果可以怎么实现???在线等
--> 测试数据:[TB]
if object_id('[TB]') is not null drop table [TB]
GO
create table [TB]([类别] varchar(4),[名称] varchar(4),[数量] int)
insert [TB]
select '家具','桌子',1 union all
select '家具','椅子',2 union all
select '电器','电视',1 union all
select '电器','冰箱',1 union all
select '食品','薯片',3SELECT [类别],[名称],[数量] from (
select [类别] as flag,[类别],[名称],rtrim([数量]) as [数量] from [TB]
UNION ALL
SELECT DISTINCT [类别],'------','--------','---------' FROM TB t
)g
ORDER BY g.flag,[名称] desc/*
类别 名称 数量
------ -------- ------------
电器 电视 1
电器 冰箱 1
------ -------- ---------
家具 桌子 1
家具 椅子 2
------ -------- ---------
食品 薯片 3
------ -------- ---------(8 行受影响)*/drop table [TB]