گاهی اوقات در Sql نیاز به ایجاد الگوی خاص جستجو و بررسی شباهت رشتهها میباشد و چون عملگر مساوی به هیچ عنوان الگوپذیر نیست و در بررسی شباهت کاربرد ندارد باید از عملگر Like در شرط استفاده کرد. در این آموزش با عملگر Like در Sql آشنا خواهید شد.
در صورتیکه آموزش قبلی مربوط به دستور Where در Sql را مشاهده نکردید بهتر است که ابتدا این آموزش را مشاهده نمایید. در آموزش بعدی با دستور Order By در Sql آشنا خواهید شد

آموزش تصویری عملگر Like در Sql
بررسی شباهت رشتهها در Sql
برای تساوی رشتهها میتوان از عملگر مساوی “=” استفاده کرد.
select * from production.product where Name='Blade'
عملگر مساوی به هیچ عنوان الگوپذیر نیست و در بررسی شباهت رشتهها هیچ کاربردی نخواهد داشت و باید از عملگر Like استفاده کرد.
برای بررسی شباهت با عملگر Like میتوان از دونوع Wildcard (کاراکترهایی هستند که در طراحی الگو مورد استفاده قرار میگیرند و معنی به غیر از آنچه که ظاهراً نمایش میدهند را دارند) به شرح زیر استفاده کرد:
- % : معادل صفر تا بی نهایت کاراکتر میباشد.
- _ : هر آندرلاین ( _ ) دقیقاً معادل یک کاراکتر است.
در عملگر مساوی نمیتوان از Wildcard استفاده کرد و درصورتیکه در عملگر Like نیز از Wildcard استفاده نشود دقیقا معادل عملگر مساوی عمل خواهد کرد و تفاوتی با هم ندارند.
بطور مثال جهت یافتن کالایی که نام آنها با حرف B شروع میشود باید از عملگر Like استفاده کرد و پس از حرف B از علامت % استفاده شود زیرا سایر حروف اهمیتی ندارد و میتواند از صفر تا بینهایت حرف بعد از B باشد.

در صورتیکه بخواهید کالایی را داشته باشید که با حرف B شروع شود و دقیقا 5 حرف باشد باید بعد از حرف B از چهار آندرلاین (_) استفاده کنید.
Select * From product Where name like 'B____'
اگر WildCardها داخل براکت “[ ]” قرار داده شوند کاراکتر غیر از الگو محسوب میشود. خروجی دستور زیر شامل عبارت “%” میباشد یعنی اگر در نام کالایی عبارت “%” وجود داشته باشد در خروجی نمایش داده میشود.
select * from production.product where Name like '%[%]%'
در مقایسه مقادیر فارسی حرف N قبل از رشته قرار میگیرد و این N به معنای Unicode است. در مثال زیر کالاهایی که با کلمه “خودرو” شروع میشوند را نمایش میدهد.
select * from production.product where Name like N'خودرو%'

جستجو رشته در Sql
جهت جستجوی رشتهها اگر کاراکترها داخل “[ ]” قرار داده شود با هم OR میشود یعنی اگر مانند مثال زیر داخل براکت سه حرف b ،a و c وجود داشته باشد خروجی شامل کالاهایی خواهد بود که نام آنها با حروف a یا b یا c شروع شده اند.
Select * From product Where name like '[a b c]%'
درصورتیکه علامت “^” در ابتدای حروف داخل براکت “[ ]” قرار داده شود به معنای Not است. در مثال زیر خروجی شامل کالاهایی خواهد بود که نام آنها با حروف a یا b یا c شروع نشده اند.
Select * From product Where name like '[^a b c]%'
برای بررسی عدم شباهت باید از دستور Not Like استفاده کرد بطور مثال برای مشاهده کالایی که نام آنها با حرف B شروع نشده باشد باید از دستور زیر استفاده کرد.
Select * From product where name not like 'B%'
دستور Like در Sql
جهت بررسی شباهت در شرط باید از دستور Like استفاده کرد.
سرفصل های آموزش Sql
- 01 Sql Server | نصب Sql Server 2014 رایگان 05:14
- 02 Sql Server | آموزش Sql Server رایگان 05:47
- 03 Sql Server | دستور Select در Sql رایگان 06:52
- 04 Sql Server | دستور Where در Sql رایگان 08:12
- 05 Sql Server | عملگر Like در Sql رایگان 09:42
- 06 Sql Server | دستور Order By در Sql رایگان 07:07
- 07ویتامین استوایی | آموزش رایگان Sql Server عضویت 7 فیلم آموزشی
- 08 جادوی استوایی | آموزش کامل Sql Server خرید 41 فیلم آموزشی
سلام می خواهم با دستور لایک مقدار داخل رکورد را خالی کنم چگونه انجام میشه ‘ ‘ خالی که می گزارم همه مقدار را نشان می دهد
سلام دوست عزیز
عملگر like در هنگام جستجو کاربرد دارد و برای اینکه رکوردی را خالی کنیم باید با استفاده از دستور update مقدار فیلد موردنظر برابر با Null شود.
سلام و وقت بخیر
امیدوارم در صحت و سلامت باشید
میخواستم بدونم آیا میشه مقداری رو از یه textbox گرفت و با کمک عملگر Like اونو با مقادیر ستونی از یک جدول مقایسه کرد؟
سلام دوست عزیز. بله میشه اینکار رو کرد