logo

מחרוזת השוואת SQL

בסעיף SQL זה, נדון כיצד להשוות שתי מחרוזות או יותר בשפת השאילתה המובנית

אנו יכולים להשוות בין שתי מחרוזות או יותר באמצעות פונקציית המחרוזת STRCMP, אופרטור LIKE ואופרטור Equal.

פונקציית מחרוזת STRCMP

STRCMP היא פונקציה של מחרוזת שמשווה את שתי המחרוזות שצוינו ונותנת 0 אם אורך המחרוזת הראשונה שווה לאורכה של המחרוזת השנייה. אם אורך המחרוזת הראשונה גדול מאורך המחרוזת השנייה, הפונקציה מחזירה 1 אחרת -1.

תחביר של פונקציית STRCMP

 SELECT STRCMP (String_1, String_2); 

דוגמאות לפונקציית מחרוזת STRCMP

דוגמה 1: שאילתת ה-SELECT הבאה משווה את האורך של מחרוזות JAVATPOINT ו-EXAMPLES:

 SELECT STRCMP ('JAVATPOINT', 'EXAMPLES'); 

תְפוּקָה:

 1 

דוגמה 2: שאילתת ה-SELECT הבאה משווה את אורכם של שני משפטים העוברים בפונקציית STRCMP:

 SELECT STRCMP ('Website is good', 'javatpoint is good'); 

תְפוּקָה:

 -1 

דוגמה 3: שאילתת ה-SELECT הבאה משווה את האורך של שתי ערים:

 SELECT STRCMP ( 'Delhi', 'Noida'); 

תְפוּקָה:

 0 

מפעיל LIKE

האופרטור LIKE מתאים את התבנית המסוימת עם כל שורה בשדה ומחזיר את הערכים התואמים בפלט. אופרטור זה משמש תמיד עם פסקת WHERE במשפט SQL.

תחביר של אופרטור Like

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ……, Column_Name_N FROM Table_Name WHERE Column_Name LIKE Pattern; 

דוגמה לאופרטור LIKE

ניקח את טבלת התלמידים הבאה:

רול_לא שם פרטי עִיר גיל אֲחוּזִים כיתה
101 אקאש דלהי 18 89 A2
102 בהבש קאנפור 19 93 A1
103 יאש דלהי עשרים 89 A2
104 בהונא דלהי 19 78 B1
105 יאטין מזל עשרים 75 B1
106 אישקה גאזיאבאד 19 91 C1
107 ויווק גואה עשרים 80 B2

שאילתה 1: השאילתה הבאה מציגה את הרשומה של אותם תלמידים מטבלת התלמידים שלמעלה ששם_השם שלהם מתחיל באות 'B':

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE 'B%'; 

פלט של השאילתה למעלה:

רול_לא שם פרטי אֲחוּזִים כיתה
102 בהבש 93 A1
104 בהונא 78 B1

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

שאילתה 2: השאילתה הבאה מציגה את הרשומה של התלמידים מטבלת התלמידים הנתונה שהשם_שם שלהם מכיל את התו 'a' בכל מיקום:

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE '%a%' ; 

פלט של השאילתה למעלה:

רול_לא שם פרטי עִיר גיל אֲחוּזִים כיתה
101 אקאש דלהי 18 89 A2
102 בהבש קאנפור 19 93 A1
103 יאש דלהי עשרים 89 A2
104 בהונא דלהי 19 78 B1
105 יאטין מזל עשרים 75 B1
106 אישקה גאזיאבאד 19 91 C1

מפעיל שווה (=)

זהו סוג של אופרטור השוואה המציג את הנתונים התואמים מטבלת SQL הנתונה.

אופרטור זה נמצא בשימוש רב על ידי משתמשי מסד הנתונים ב-Structured Query Language.

אופרטור זה מחזיר שורות TRUE מטבלת מסד הנתונים אם הערך של העמודה זהה לערך שצוין בשאילתה.

תחביר של אופרטור שווה:

 SELECT * FROM Table_Name WHERE Column_Name = Value; 

דוגמה למפעיל שווה

ניקח את טבלת העובדים הבאה:

Worker_Id שם עובד Worker_City עובד_משכורת בונוס_עובד
101 אנוג' גאזיאבאד 35,000 2000
102 טושאר מזל 29000 3000
103 ויווק קולקטה 35,000 2500
104 שיבאם גואה 22000 3000

השאילתה הבאה מציגה את הרשומה של אותם עובדים מטבלת העובדים ש-Worker_Salary שלהם היא 35000:

 SELECT * FROM Worker WHERE Worker_Salary = 35000; 

תְפוּקָה:

Worker_Id שם עובד Worker_City עובד_משכורת בונוס_עובד
101 אנוג' גאזיאבאד 35,000 2000
103 ויווק קולקטה 35,000 2500