PDA

View Full Version : مشکل در سرچ



resatak
چهارشنبه 09 اسفند 1391, 15:25 عصر
سلام خدمت دوستان
من یه مشکلی دارم اینه که سرچم درست کار می کنه فقط space تشخیص نمیده
مثلا علیزاده رو سرچ کنم محمد علیزاده و علیزاده رو پیدا می کنه ولی علی زاده رو پیدا نمی کنه
اینم کدم هست البته با

Cm.CommandType = CommandType.StoredProcedure;
Cm.CommandText = "Select_Data";
Cm.Parameters.Add("Ownername", SqlDbType.NVarChar, 50).Value = DataCm.Ownername;

@DataId int=0,
@OwnerName nvarchar(50)=null,
SELECT
dbo.Data.DataId,
dbo.Owner.OwnerName
FROM
dbo.Data
where
dbo.Data.DataId=case when @DataId=0 then dbo.Data.DataId else @DataId end
and (LOWER(OwnerName) like case when isnull(@OwnerName,'')='' then OwnerName else LOWER(@OwnerName) end + '%' )

Mahmoud.Afrad
چهارشنبه 09 اسفند 1391, 16:50 عصر
فضای خالی رو از بین ببرید ببینید درست میشه:

set @OwnerName = REPLACE(LOWER(@OwnerName) , ' ' , '')

SELECT dbo.Data.DataId, dbo.Owner.OwnerName
FROM dbo.Data
where dbo.Data.DataId = case when @DataId=0 then dbo.Data.DataId else @DataId end
AND REPLACE(LOWER(OwnerName) , ' ' , '') like case when isnull(@OwnerName,'')='' then OwnerName else LOWER(@OwnerName) end + '%'

resatak
چهارشنبه 09 اسفند 1391, 17:26 عصر
ممنون دوست عزیز حل شد
ببخشید ولی الان یک مشکل دیگه دارم اونم اینه که با - مشکل دارم مثلا وقتی رضا رو سرچ می کنم رضا رو میاره ولی رضا-مجید رو نمیاره

محمد سلیم آبادی
پنج شنبه 10 اسفند 1391, 08:55 صبح
ممنون دوست عزیز حل شد
ببخشید ولی الان یک مشکل دیگه دارم اونم اینه که با - مشکل دارم مثلا وقتی رضا رو سرچ می کنم رضا رو میاره ولی رضا-مجید رو نمیاره
کاراکتر % را الحاق کنید قبل و بعد کلمه رضا تا با این کار مشکلی که گفتین حل بشه.
مثلا
column_name like '%'+@value+'%'