select b.*,a.* from a,b where a.号码 like '%'+b.号码+'%'
if not exists(select * from sysobjects where name='C') create table C ( number nvarchar (255) ) insert into C select '08514734440' union all select '08514734441' union all select '08514734442' union all select '085152' if not exists(select * from sysobjects where name='D') create table D ( number nvarchar (255) )insert into D select '08514734' union all select '085147368' union all select '08515'select D.*,C.* from C inner join D on charindex(D.number,C.number)>0drop table C drop table D---------------------------------------------- 08514734 08514734440 08514734 08514734441 08514734 08514734442 08515 085152
create view view_number as select 号段.number,号码.number from C inner join 号段 on charindex(号段.number,号码.number)>0
create table C
(
number nvarchar (255)
)
insert into C select '08514734440'
union all select '08514734441'
union all select '08514734442'
union all select '085152'
if not exists(select * from sysobjects where name='D')
create table D
(
number nvarchar (255)
)insert into D select '08514734'
union all select '085147368'
union all select '08515'select D.*,C.* from C inner join D on charindex(D.number,C.number)>0drop table C
drop table D----------------------------------------------
08514734 08514734440
08514734 08514734441
08514734 08514734442
08515 085152
as
select 号段.number,号码.number from C inner join 号段 on charindex(号段.number,号码.number)>0
换成 charindex(D.number,C.number) = 1 后结果对了。问题是 charindex 还不如 like 来得快。