ورود

View Full Version : مقایسه دو رشته با هم



salman_arak
چهارشنبه 23 خرداد 1386, 10:33 صبح
با سلام
من دو تا جدو ل دارم که در هر دو جدول یک فیلد bcode می باشد بااین فرق که در یکی از انها مثلا "10001 شری" و در دیگری "10001شری" بین عدد و حرف یکی فاصله است ودیگری این فاصله رو نداره . حالا من می خوام با مقایسه این دو فیلد که در ظاهر باهم یکی هستند یه سری کارهای دیگری رو انجام بدم اما تو ی select این دو تا رو برابر نمی دونه که البته منطقی هم هست حالا من بایستی چه کار کنم که این دو تا با هم برابر بشند ؟
راهی که من به نظر م می رسه اینه که من قبل از مقایسه بیام این فاصله رو حذف کنم و بعد مقایسه کنم که البته من راه عملیش رو هم نمی دونم !!!
از دوستان درخواست می کنم اگه راهی به نظرشون می رسه منو راهنمایی کنند
یه سوال دیگه ایا در sqlsrvr در حروف فارسی بین حروف کوچک و بزرگ فرقی میزاره که در مقایسه با هم برابر نشند (مثلا ی بزرگ و ی وسط)
ممنون.

Kamyar.Kimiyabeigi
چهارشنبه 23 خرداد 1386, 11:06 صبح
شما برای از بین بردن فاصله در انتهای فیلد میتونین از RTrim استفاده کنین


SELECT 'ONLY FOR TEST ' + ':A'

SELECT RTRIM('ONLY FOR TEST ') + ':A'


برای از بین بردن فاصله در ابتدای فیلد میتونین از LTrim استفاده کنین


SELECT 'A:' + ' ONLY FOR TEST'

SELECT 'A:' + LTRIM(' ONLY FOR TEST ')


حالا اگر فاصله در میان متن فیلد بود مثل مثال شما می تونینی از REPLACE استفاده کنین


SELECT '10001 Ali'

SELECT REPLACE('10001 Ali', ' ' , '')