zodiack
چهارشنبه 27 آبان 1394, 09:31 صبح
من در sql یه ورودی دارم (که شامل 2 یا 3 کلمه است)، و میخوام که این کلمات در ستونهایی مثل col1 و col2 جستجو شود. حالا:
1- شرط من OR است، یعنی اینکه هر کدام از این کلمات حتی 1بار در یکی از ستون ها آمده باشد.
2- این کار با دستور زیر قابل انجام است، اما کند است. مدنظر من سرعت بالاتر است.
DECLARE@find varchar(30)='word1+word2'
select*from tableA where tableA.title like'% word1 %'or tableA.title like'% word2 %'
or tableA.keyWord like'% word1 %'or tableA.keyWord like'% word2 %'
1- شرط من OR است، یعنی اینکه هر کدام از این کلمات حتی 1بار در یکی از ستون ها آمده باشد.
2- این کار با دستور زیر قابل انجام است، اما کند است. مدنظر من سرعت بالاتر است.
DECLARE@find varchar(30)='word1+word2'
select*from tableA where tableA.title like'% word1 %'or tableA.title like'% word2 %'
or tableA.keyWord like'% word1 %'or tableA.keyWord like'% word2 %'