有两个表a和b,未建立任何关系。
现对其执行如下T-SQL:
select * from a
inner join b
on charindex(a.字段a,b.字段b)>0 or charindex(b.字段b,a.字段a)>0
执行效率很低,不知道各位大侠有没有替代此语句且效率更高的语句。
现对其执行如下T-SQL:
select * from a
inner join b
on charindex(a.字段a,b.字段b)>0 or charindex(b.字段b,a.字段a)>0
执行效率很低,不知道各位大侠有没有替代此语句且效率更高的语句。
e的办法就是再加一列来标识是否满足where条件,在update和insert时更新这个列.就是传说中的触发器来控制.
inner join b
on charindex(a.字段a,b.字段b)>0
union all
select * from a
inner join b
on charindex(b.字段b,a.字段a)>0
结构比较复杂时,UNION ALL的效率会好过OR.试一下这样的改法(两表的a、b字段先建索引):
SELECT 字段列表... FROM
a INNER JOIN b ON a.a LIKE b.b+'%'
UNION ALL
SELECT 字段列表... FROM
b INNER JOIN a ON b.b LIKE a.a+'%'
Anything is possible.
等级:
能给我们根据吗?先谢谢你了