use test go if object_id('test.dbo.tb') is not null drop table tb
-- 创建数据表
create table tb( 姓名 char(5), 卡号 int, 电话 char(9), 消费项目 char(9), 次数 int )
go
--插入测试数据
insert into tb select '张三',234,'1333323','蜡水洗车',1 union all select '张三',234,'1333323','臭氧消毒',2 union all select '张三',234,'1333323','消毒',2 union all select '李四',237,'1553323','蜡水洗车',3 union all select '李四',237,'1553323','臭氧消毒',2 go
--代码实现 ;with t as(select idd=row_number()over(partition by 姓名 order by 次数),* from tb) select 姓名=case when idd=1 then rtrim(姓名) else '' end ,卡号=case when idd=1 then rtrim(卡号) else '' end ,电话=case when idd=1 then rtrim(电话) else '' end ,消费项目,次数 from t
/*测试结果 姓名 卡号 电话 消费项目 次数
--------------------------------------
李四 237 1553323 臭氧消毒 2 蜡水洗车 3 张三 234 1333323 蜡水洗车 1 臭氧消毒 2 消毒 2
(5 行受影响)
*/
sql查询呈现特定样式
最新推荐文章于 2019-09-19 15:50:38 发布