התאמת תבניות בשאילתות SQL עם תווים כלליים

התאמת דפוסי SQL מאפשרת לך לחפש תבניות בנתונים אם אינך יודע את המילה או הביטוי המדויקים שאתה מחפש. הסוג הזה של SQL שאילתה משתמשת בתווים כלליים כדי להתאים לתבנית, במקום לציין אותה במדויק. לדוגמה, אתה יכול להשתמש בתו הכללי "C%" כדי להתאים לכל מחרוזת שמתחילה באותיות רישיות.

זכוכית מגדלת
קייט טר האר / פליקר / CC ב -2.0

שימוש במפעיל LIKE

כדי להשתמש בביטוי תווים כלליים בשאילתת SQL, השתמש באופרטור LIKE בסעיף WHERE וסגור את התבנית במרכאות בודדות.

שימוש ב-% Wildcard לביצוע חיפוש פשוט

כדי לחפש עובד כלשהו במסד הנתונים שלך עם שם משפחה שמתחיל באות C, השתמש בהצהרת Transact-SQL הבאה:

בחר *
מעובדים
היכן שם משפחה כמו 'C%'

השמטת דפוסים באמצעות מילת המפתח NOT

השתמש במילת המפתח NOT כדי לבחור רשומות שאינן תואמות לתבנית. לדוגמה, שאילתה זו מחזירה את כל הרשומות ששמן האחרון עושה לֹא התחל ב- C:

בחר *
מעובדים
איפה שם משפחה לא כמו 'C%'

התאמת תבנית בכל מקום באמצעות% Wildcard פעמיים

השתמש בשני מקרים של % תו כללי כדי להתאים לדפוס מסוים בכל מקום. דוגמה זו מחזירה את כל הרשומות המכילות C בכל מקום בשם המשפחה:

בחר *
מעובדים
איפה שם משפחה LIKE '% C%'
instagram viewer

מציאת התאמת תבנית במיקום ספציפי

להשתמש ב _ תו כללי להחזרת נתונים במיקום ספציפי. דוגמה זו תואמת רק אם C מתרחשת במיקום השלישי של עמודת שם המשפחה:

בחר *
מעובדים
איפה שם משפחה LIKE '_ _C%'

ביטויים עם תווים כלליים נתמכים ב- SQL Transact

ישנם מספר ביטויים של תווים כלליים הנתמכים על ידי Transact SQL:

  • ה % תו כללי תואם לאפס או יותר תווים מכל סוג שהוא וניתן להשתמש בו להגדרת תווים כלליים לפני התבנית וגם אחריה. אם אתה מכיר התאמת תבנית DOS, זה המקביל לתו הכללי * בתחביר זה.
  • ה _ תו כללי תואם בדיוק לדמות אחת מכל סוג שהוא. זה המקביל ל ? תו כללי בהתאמת תבנית DOS.
  • ציין רשימת תווים על ידי סגירתם בסוגריים מרובעים. למשל, תו הכללי [aeiou] תואם כל תנועה.
  • ציין טווח תווים על ידי סגירת הטווח בסוגריים מרובעים. למשל, תו הכללי [א-מ] תואם לכל אות במחצית הראשונה של האלף-בית.
  • שלל טווח של תווים על ידי הכללת תו הקראט מיד בתוך סוגר הריבוע הפותח. לדוגמה, [^ aeiou] תואם כל דמות שאינה קולית בזמן [^ א-מ] תואם כל תו שלא נמצא במחצית הראשונה של האלף-בית.

שילוב של תווים כלליים לדפוסים מורכבים

שלב תווים כלליים אלה בתבניות מורכבות לביצוע שאילתות מתקדמות יותר. לדוגמה, נניח שעליך לבנות רשימה של כל העובדים שלך שיש להם שמות שמתחילים באות מהמחצית הראשונה של האלף-בית, אך כן לֹא לסיים בתנועה. תוכל להשתמש בשאילתה הבאה:

בחר *
מעובדים
איפה שם משפחה LIKE '[a-m]% [^ aeiou]'

באופן דומה, תוכל לבנות רשימה של כל העובדים עם שמות המשפחה המורכבים מארבעה תווים בדיוק באמצעות ארבעה מופעים של _ תבנית:

בחר *
מעובדים
איפה שם משפחה כמו '____'

כפי שניתן לדעת, השימוש ביכולות התאמת דפוסי SQL מציע למשתמשי מסדי נתונים את היכולת לעבור מעבר לשאילתות טקסט פשוטות ולבצע פעולות חיפוש מתקדמות.

instagram story viewer