פונקציות מחרוזת של mySQL

מחבר:
בתאריך:

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

להורדת קובץ ה-sql שמלווה את המדריך:

להורדה

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

workers_idworkers_nameworkers_city
1MosheNahariya
2YekhezkelRamat Hasharon
3YirmiyahuBat Yam
4GershonBeer-sheva
5AsherJerusalem
6MetushelahNatanyah

 

הפונקציה LENGTH()

הפונקצייה LENGTH() מחזירה את אורך המחרוזת.

ניתן להשתמש בפונקציה על כל מחרוזת. לדוגמה:

SELECT LENGTH("mySQL is awesome!!");

עם התוצאה:

18
  • כי אורך המחרוזת הוא 18.

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

SELECT LENGTH(workers_name)
FROM workers
LIMIT 3;
LENGTH(workers_name)
5
9
9

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

 

הפונקציה CONCAT()

כשיש לנו מספר עמודות שאנו רוצים להציג ביחד, במסגרת עמודה אחת, נשתמש בפונקציה CONCAT().

הסרטון הקצר הבא מדגים עבודה עם הפונקציה CONCAT():

 

זה התחביר של שאילתת CONCAT().

SELECT CONCAT(`עמודה 1` , `עמודה 2`)
FROM `שם הטבלה`

זו השאילתה בדוגמה שלנו שבה שם הטבלה הוא workers:

SELECT CONCAT(`workers_name`, `workers_city`)
FROM workers

וכך נראית העמודה המאוחדת:

CONCAT(`workers_name`, `workers_city`)
MosheNahariya
YekhezkelRamat Hasharon
YirmiyahuBat Yam
GershonBeer-sheva
AsherJerusalem
MetushelahNatanyah

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

SELECT CONCAT(`workers_name`," from ",`workers_city`)
FROM workers 
CONCAT(`workers_name`," from ",`workers_city`)
Moshe from Nahariya
Yekhezkel from Ramat Hasharon
Yirmiyahu from Bat Yam
Gershon from Beer-sheva
Asher from Jerusalem
Metushelah from Natanyah

כדי לתת שם יפה לעמודה שיצרנו נשתמש ב-AS. כך נראית השאילתה שנותנת לעמודה שלנו את השם 'united_column' :

SELECT CONCAT(`workers_name`," from ",`workers_city`)
AS 'united_column'
FROM workers

וזו התוצאה:

united_column
Moshe from Nahariya
Yekhezkel from Ramat Hasharon
Yirmiyahu from Bat Yam
Gershon from Beer-sheva
Asher from Jerusalem
Metushelah from Natanyah

 

הפונקציות LOWER() ו-UPPER()

פונקציות מועילות לעבודה עם טקסטים לועזיים הם UPPER() ו- LOWER() שהופכות את כל האותיות לקטנות או גדולות. הפונקציות שימושיות במיוחד במקרים בהם אנשים נוטים להשתמש באותיות קטנות וגדולות בליברליות, ואז אנו צריכים למצוא התאמה למרות השינויים. לדוגמה, בהזנת מיילים.

נדגים את פעולת הפונקציות:

SELECT UPPER(workers_name), LOWER(workers_city)
FROM workers
LIMIT 3;
UPPER(workers_name) LOWER(workers_city)
MOSHEnahariya
YECHEZKELramat hasharon
YIRMIYAHUbat yam

 

הפונקציה TRIM()

פונקציה מועילה במיוחד היא TRIM() אשר מסירה את המרווחים סביב המחרוזת.

לדוגמה:

SELECT TRIM(workers_name) AS name
FROM workers
LIMIT 3;

בעוד TRIM() מסירה את הרווחים משני צידי המחרוזת LRIM() מסירה משמאל ו-RTRIM() מסירה מימין.

 

הפונקציות LEFT() ו-RIGHT()

הפונקציה LEFT() מקצרת המחרוזת למספר התווים הרצוי כשהיא מתחילה לספור משמאל.

לדוגמה, נקצר את המחרוזות ל-4 תווים:

LEFT(workers_name, 4) AS short_name
FROM workers
LIMIT 3;

עם התוצאה:

short_name
Mosh
Yech
Yirm

הפונקציה RIGHT() מקצרת המחרוזת למספר התווים הרצוי כשהיא מתחילה לספור מימין ועל כן היא יכולה להועיל במיוחד בעברית.

לדוגמה:

RIGHT(workers_name, 3) AS short_right_name
FROM workers
LIMIT 3;
short_name
oshe
zkel
yahu

mySQL כולל שפע של פונקציות מועילות עליהם תוכלו ללמוד מהתיעוד הרשמי mySQL string functions

 

במדריך הבא נלמד על מפתח זר (foreign key) ב-SQL

לכל מדריכי ה- mySQL

 

 

אהבתם? לא אהבתם? דרגו!

0 הצבעות, ממוצע 0 מתוך 5 כוכבים

 

 

הוסף תגובה חדשה

 

= 9 + 5