تطبیق الگوی در SQL Queries

با استفاده از wildcards برای تطابق غیرمستقیم

تطبیق الگوی الگویی به شما امکان می دهد که الگوها را در داده ها جستجو کنید، اگر کلمه یا اصطلاح دقیقی را که می خواهید جستجو کنید نمی دانید. این نوع پرس و جو SQL با استفاده از کاراکترهای کلمات کلیدی برای مطابقت با الگوی، به جای مشخص کردن آن دقیقا. به عنوان مثال، شما می توانید با استفاده از عبارت "C٪" برای مطابقت با هر رشته ای که با C پایت شروع می شود، استفاده کنید.

با استفاده از اپراتور LIKE

برای استفاده از عبارات wildcard در یک پرس و جو SQL، از عملگر LIKE در یک clause WHERE استفاده کنید و الگوی را در علامت نقل قول قرار دهید.

استفاده از٪ Wildcard برای انجام جستجوی ساده

برای جستجو برای هر کارمند در پایگاه داده خود با نام خانوادگی که با حرف C شروع می شود، از عبارت Transact-SQL زیر استفاده کنید:

SELECT * از کارکنان WHERE last_name LIKE 'C٪'

الگوهای حذف با استفاده از کلید واژه NOT

از کلید واژه NOT استفاده کنید تا پرونده هایی را انتخاب کنید که با الگوی مطابقت ندارند. به عنوان مثال، این پرس و جو تمام پرونده هایی را که آخرین نام آنها با C شروع نمی شود، باز می گرداند.

SELECT * از کارکنان WHERE last_name مانند 'C٪'

تطبیق الگوی هر جا با استفاده از٪ Wildcard دوبار

از دو نمونه از ٪ wildcard استفاده کنید تا با یک الگوی خاص در هر کجا منطبق شوید. این مثال تمام پرونده هایی را که حاوی یک C در هر نام خانوادگی است را نشان می دهد.

SELECT * از کارکنان WHERE last_name LIKE '٪ C٪'

پیدا کردن یک الگو برای یک موقعیت خاص

از wildcard _ برای بازگشت داده ها در یک مکان خاص استفاده کنید. این مثال فقط اگر C در موقعیت سوم ستون نام خانوادگی مطابقت داشته باشد، مطابقت دارد:

SELECT * از کارکنان WHERE last_name LIKE '_ _C٪'

اصطلاحات علامت های تجاری پشتیبانی شده در SQL Transact

چندین اصطلاح معروف زیر پشتیبانی شده توسط Transact SQL وجود دارد:

ترکیب علامت های تجاری برای الگوهای پیچیده

ترکیب کلمات کلیدی در الگوهای پیچیده برای انجام نمایش های پیشرفته تر. به عنوان مثال، فرض کنید شما نیاز دارید که یک لیست از تمام کارکنان خود را که اسامی را با یک حرف از نیمه اول الفبای شروع می کنند ایجاد کنید اما با واکه پایان ندهید . شما می توانید از پرس و جو زیر استفاده کنید:

SELECT * از کارکنان WHERE last_name LIKE '[am]٪ [^ aeiou]'

به طور مشابه، شما می توانید یک لیست از تمام کارکنان با نام های خانوادگی که شامل دقیقا چهار کاراکتر هستند را با استفاده از چهار نمونه _ الگوی ایجاد کنید:

SELECT * از کارکنان WHERE last_name مانند '____'

همانطور که می توان گفت، استفاده از قابلیت های الگوریتم الگوریتم SQL، کاربران پایگاه داده را قادر می سازد فراتر از پرس و جو متن ساده و انجام عملیات جستجو پیشرفته.