筛选重复数据新问题,求高手帮我解决.急!!!!!!!!
有如下数据:
编号 电话号码 扣费状态
1 7122761 0
2 7122761 0
3 7122761 1
4 7189960 0
5 7189960 0
要求查询得到如下结果
3 7122761 1
4 7189960 0
(结果提示:即,如果同一号码输入多次,则显示扣费成功的那条,如果没有扣费成功则显示第一条)
问题点数:100、回复次数:8Top
1 楼xeqtr1982(Visual C# .NET)回复于 2006-03-19 19:06:48 得分 10
declare @t table(编号 int,电话号码 varchar(10),扣费状态 int)
insert into @t select 1,'7122761',0
union all select 2,'7122761',0
union all select 3,'7122761',1
union all select 4,'7189960',0
union all select 5,'7189960',0
select top 1 * from @t
where 电话号码 not in(select 电话号码 from @t where 扣费状态=1)
union
select * from @t where 扣费状态=1
--这样?Top
2 楼huailairen(流浪猫--很想养只猫,带着它到处流浪。)回复于 2006-03-19 19:07:44 得分 90
select a.编号 ,a.电话号码 ,a.扣费状态
from haoma a
where a.编号 in (select top 1 b.编号 from haoma b where a.电话号码=b.电话号码 order by b.扣费状态 desc ,编号 )Top
3 楼huailairen(流浪猫--很想养只猫,带着它到处流浪。)回复于 2006-03-19 19:08:04 得分 0
create table haoma(编号 int, 电话号码 int , 扣费状态 int)
insert into haoma values(1, 7122761 , 0)
insert into haoma values(2 , 7122761 , 0)
insert into haoma values(3 , 7122761 , 1)
insert into haoma values(4 , 7189960 , 0)
insert into haoma values(5 , 7189960 , 0)
select a.编号 ,a.电话号码 ,a.扣费状态
from haoma a
where a.编号 in (select top 1 b.编号 from haoma b where a.电话号码=b.电话号码 order by b.扣费状态 desc ,编号 )Top
4 楼aniude(重返荣耀)回复于 2006-03-19 19:13:44 得分 0
MARKTop
5 楼wlmail2005(菜菜菜)回复于 2006-03-19 19:16:29 得分 0
收藏Top
6 楼powerhai(蓝色力量)回复于 2006-03-19 20:14:28 得分 0
xeqtr1982(ShaKa) -->你的会查到重复值.
huailairen(流浪猫) -->完美无缺Top
7 楼xeqtr1982(Visual C# .NET)回复于 2006-03-19 20:17:40 得分 0
恩,看到了.呵呵,考虑不周.
按流浪猫的方法吧. :)Top
8 楼pol000(糊涂)回复于 2006-04-16 17:03:54 得分 0
markTop




