צור מחרוזות משנה של מחרוזות ב-PostgreSQL

Zwr Mhrwzwt Msnh Sl Mhrwzwt B Postgresql



ישנם מקרים שבהם ייתכן שתרצה לחלץ קטע נתון (מחרוזת משנה) ממחרוזת. יכול להיות שאתה מעוניין רק בקטע הנתון ורוצה להשאיר את החלק השני של המחרוזת בפלט שלך. תאר לעצמך מקרה שבו יש לך שם מלא כגון 'fname lname' כמחרוזת אחת ואתה רוצה רק לחלץ את ה'fname' בפלט שלך. לשם כך, עליך להשתמש בפונקציית המחרוזת PostgreSQL. הכנו מדריך מפורט לעקוב אחר, כולל דוגמאות שיעזרו לך להבין איך אתה יכול ליצור מחרוזות משנה של מחרוזות ב-PostgreSQL.

דוגמאות כיצד ליצור מחרוזות משנה של מחרוזות ב-PostgreSQL

הדבר הראשון שעלינו לבדוק הוא התחביר.

SUBSTRING( string/column_name, start_position, length)

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







דוגמה 1: ציין את אורך המחרוזת המשנה

כאשר יש לך את מחרוזת היעד שלך, אתה יכול להגדיר את אורך המחרוזת המשנה. לדוגמה, אם יש לך את המחרוזת שלך בתור 'Linuxhint' ואתה רוצה ליצור את המחרוזת שלך בתור 'Linux', בצע את הפקודה הבאה:



SELECT SUBSTRING('Linuxhint' FROM 1 FOR 5) AS שם משתמש;

אנו משתמשים במילת המפתח FROM כדי לציין את מיקום ההתחלה שלנו ובמילת המפתח FOR כדי לציין את אורך המחרוזת המשנה. 'שם המשתמש' הוא השם שאנו נותנים לפלט שלנו.



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





נניח שאתה רוצה שתת המחרוזת תיווצר ממיקום התחלה שונה במחרוזת שלך. לדוגמה, אם אתה רוצה 'רמז' בתור המחרוזת המשנה, אתה פשוט משנה את מיקום ההתחלה ואת האורך.



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

דוגמה 2: ציין את המיקום של המחרוזת המשנה

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

עבור דוגמה זו, יש לנו את המחרוזת שלנו בתור 'Hello Linuxhint'. כדי לקבל את 'Linuxhint' בתור המחרוזת המשנה שלנו מבלי לציין את מיקומה, אנחנו צריכים רק לציין באיזה מיקום אנחנו רוצים ליצור את המחרוזת. במקרה זה, אנו מתחילים מעמדה 6. לפיכך, הפקודה שלנו היא כדלקמן:

SELECT SUBSTRING('Hello Linuxhint' FROM 6) AS שם משתמש;

דוגמה 3: ציין את עמדות ההתחלה והסיום

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

באמצעות 'Hello Linuxhint' כמחרוזת שלנו, אנו יכולים ליצור תת-מחרוזת שלנו כ-'Hello Linux' ולהשמיט את הסעיפים האחרים על ידי ציון עמדות ההתחלה והסיום באופן הבא:

SELECT SUBSTRING('Hello Linuxhint', 1, 11) AS שם משתמש;

אין צורך במילת מפתח עבור מקרה זה, רק את עמדות ההתחלה והסיום.

דוגמה 4: עבודה עם טבלת PostgreSQL

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

נניח שאנו מכוונים לעמודה 'cust_email' ואנו רוצים ליצור מחרוזת משנה על ידי ציון האורך. נקבל את הפקודה שלנו כדלקמן:

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

בואו נעדכן את הטבלה בשם מלא בעמודת השם שלנו. הטבלה החדשה שלנו נראית כך:

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

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

אנו מפעילים את הפקודה שלנו באופן הבא:

SELECT order_id, SUBSTRING(name FROM 1 FOR POSITION( ‘ ‘ IN name) – 1) AS client_fname FROM customers;

אנו בוחרים את ה-'order_id' ואת המחרוזת המשנה, והפלט שלנו מופיע באופן הבא:

כך אתה יכול ליצור מחרוזות משנה ממחרוזות בטבלת PostgreSQL.

סיכום

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