פונקציית המחרוזת SUBSTRING_INDEX מציגה את כל התווים לפני הסמל הספציפי במחרוזת הנתונה.
תחביר של פונקציית מחרוזת SUBSTRING_INDEX
תחביר1: תחביר זה משתמש ב- SUBSTRING_INDEX עם שם העמודה של טבלת SQL:
SELECT SUBSTRING_INDEX(Column_Name, symbol, starting_position) AS Alias_Name FROM Table_Name;
בתחביר, עלינו לציין את השם של העמודה בה אנו רוצים לבצע את פונקציית המחרוזת SUBSTRING_INDEX.
תחביר 2: תחביר זה משתמש בפונקציה SUBSTRING_INDEX עם המחרוזת:
SELECT SUBSTRING_INDEX(Original_String, symbol, starting_position);
דוגמאות לפונקציית מחרוזת SUBSTRING_INDEX
דוגמה 1: שאילתת ה-SELECT הבאה מציגה את ארבעת התווים לפני הסמל הנתון במילה המקורית JAVA^TPOINT:
SELECT SUBSTRING_INDEX( 'JAVA^TPOINT', '^', 1) AS SUBSTRING_INDEX_4_characters;
תְפוּקָה:
SUBSTRING_INDEX_4_תווים |
JAVA |
דוגמה 2: שאילתת ה-SELECT הבאה מציגה את SUBSTRING_INDEX 20 התווים מהמחרוזת הנתונה:
SELECT SUBSTRING_INDEX( 'JAVATPOINT is a. good website', '.', 1 ) AS SUBSTRING_INDEX_before.symbol;
תְפוּקָה:
SUBSTRING_INDEX_before.symbol |
JAVATPOINT הוא א |
דוגמה 3: שאילתת ה-SELECT הבאה מציגה את 5 התווים מהמיקום השלישי לסמל הנתון במילה הנתונה 'מזל טוב':
SELECT SUBSTRING_INDEX( '[email protected]', '@', 3) AS SUBSTRING_INDEX_before@symbol;
תְפוּקָה:
SUBSTRING_INDEX_before@symbol |
אוהב את זה |
דוגמה 4: שאילתת ה-SELECT הבאה מציגה את 20 התווים מהמיקום החמישי לסמל הנתון במחרוזת הנתונה:
SELECT SUBSTRING_INDEX('New Delhi is the capital# of India', '#', 5) AS SUBSTRING_INDEX_5_characters;
תְפוּקָה:
SUBSTRING_INDEX_before#symbol |
דלהי היא הבירה |
דוגמה 6: דוגמה זו משתמשת בפונקציה SUBSTRING_INDEX עם הטבלה ב-Structured Query Language.
כדי להבין את הפונקציה SUBSTRING_INDEX עם SQL, עלינו ליצור תחילה את טבלת SQL באמצעות משפט CREATE. התחביר ליצירת הטבלה החדשה במסד הנתונים של SQL הוא כדלקמן:
CREATE TABLE table_name ( First_Column_of_table Data Type (character_size of 1st Column), Second_Column_of_table Data Type (character_size of the 2nd column ), Third_Column_of_table Data Type (character_size of the 3rd column), ... Last_Column_of_table Data Type (character_size of the Nth column) );
ההצהרה CREATE הבאה יוצרת את תלמיד_ציוני שולחן:
CREATE TABLE Student_Marks ( Student_ID INT NOT NULL PRIMARY KEY, Student_First_Name VARCHAR (100), Student_Middle_Name VARCHAR (100), Student_Last_Name VARCHAR (100), Student_Class INT NOT NULL, Student_City Varchar(120), Student_State Varchar (80), Student_Marks INT );
שאילתות ה-INSERT להלן מכניסות את הרשומות של פקולטות המכללות ב- תלמיד_ציוני שולחן:
INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Stude.nt_Marks) VALUES (4001, Ama.n, Roy, Sha#rma, 4, Chandigarh, Pun#jab, 88); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES ( 4002, Vish.al, Gurr, Sh#arma, 8, Murthal, Harya#na, 95 ); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4007, Raj., singhania, Gupt#a, 6, Ghaziabad, Uttar Pr#adesh, 91); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4004, Yas.h, Chopra, Singh#ania, 9, Jaipur, Rajasthan#, 85); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4011, Vin.ay, Sharma, Roy#, 8, Chandigarh, Punjab#, 94); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4006, Man.oj, singhania, Gup#ta, 5, Ghaziabad, Uttar Pr#adesh, 83); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4010, Ra.m, Raheem, Gupt#a, 9, Lucknow, Uttar Pra#desh, 89);
הצהרת SELECT הבאה מציגה את הרשומות שהוכנסו של האמור לעיל תלמיד_ציוני שולחן:
SELECT * FROM Student_Marks;
בית ספר_זיהוי | שם_בית ספר | שם_אמצע בית ספר | שם_משפחה_בית ספר | תלמיד_כיתה | בית ספר_עיר | מדינת בית ספר | תלמיד_סימנים |
---|---|---|---|---|---|---|---|
4001 | אדם | רועי | שא#רמה | 4 | צ'אנדיגאר | משחק מילים #ג'אב | 88 |
4002 | ויש.אל | גור | ש#נשק | 8 | Murthal Harya#na | 95 | |
4007 | ראג'. | סינגניה | Gupt#a | 6 | גאזיאבאד | אוטר פראדש | 91 |
4004 | יא.ה | צ'ופרה | Singh#ania | 9 | ג'איפור | רג'סטאן# | 85 |
4011 | Vin.ay | שארמה | רועי# | 8 | צ'אנדיגאר | פנג'אב# | 94 |
4006 | גבר | סינגניה | Gup#ta | 5 | גאזיאבאד | אוטר פרא#דש | 83 |
4010 | RAM | ראחים | Gupt#a | 9 | מזל | אוטר פראדש | 89 |
שאילתה 1: שאילתת ה-SELECT הבאה משתמשת בפונקציה SUBSTRING_INDEX עם העמודה Student_First_Name בטבלה שלעיל Student_Marks:
SELECT Student_First_Name, SUBSTRING_INDEX(Student_First_Name, ., 1) AS SUBSTRING_INDEX_before.symbol FROM Student_Marks;
משפט SQL זה מציג את התווים מהמיקום הראשון ועד לסמל # בשמו הפרטי של כל תלמיד.
תְפוּקָה:
החיוך הכי יפה בעולם
Student_First_Name | SUBSTRING_INDEX_before.symbol |
---|---|
אדם | אוֹ |
ויש.אל | מגיע |
ראג'. | ראג' |
יא.ה | פלסטי |
Vin.ay | לבוא |
גבר | איש |
RAM | שמש |
שאילתה 2: שאילתת ה-SELECT הבאה משתמשת בפונקציה SUBSTRING_INDEX עם העמודה Student_Last_Name בטבלה שלעיל Student_Marks:
SELECT Student_Last_Name, SUBSTRING_INDEX(Student_Last_Name, #, 1) AS SUBSTRING_INDEX_before#symbol FROM Student_Marks;
משפט SQL זה מציג את התווים מהמיקום הראשון ועד לסמל # בשם המשפחה של כל תלמיד.
תְפוּקָה:
שם_משפחה_תלמיד | SUBSTRING_INDEX_before#symbol |
---|---|
שא#רמה | לִשְׁתוֹת |
ש#נשק | ש |
Gupt#a | גופט |
Singh#ania | סינג |
רועי# | רועי |
Gup#ta | גאפ |
Gupt#a | גופט |
שאילתה 3: שאילתת ה-SELECT הבאה משתמשת בפונקציה SUBSTRING_INDEX עם העמודה Student_Address בטבלה שלעיל Student_Marks:
SELECT Student_State, SUBSTRING_INDEX(Student_State, @, 2) AS SUBSTRING_INDEX_@symbol FROM Student_Marks;
הצהרת SQL זו מציגה את התווים מהמיקום השני לסמל הנתון במצב של כל תלמיד.
תְפוּקָה:
Student_State | SUBSTRING_INDEX_@סמל |
---|---|
Pun@jab | א |
Harya@na | אריה |
Uttar Pra@adesh | טטאר Pr |
Rajasthan@ | מקום זמן |
Punjab@ | unjab |
Uttar Pradesh@desh | תטאר פרא |
Uttar Pra@adesh | טטאר Pr |