ספור את השילובים הנבדלים על עמודות מרובות ב-SQL

Spwr T Hsylwbym Hnbdlym L Mwdwt Mrwbwt B Sql



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

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







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



בְּעָיָה:

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



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





ספור את השילובים הנבדלים על עמודות מרובות ב-SQL

אנו יכולים לספור את מספר השילובים הנבדלים על פני מספר עמודות באמצעות פסקת COUNT DISTINCT ופונקציית CONCAT ב-SQL.

הפונקציה CONCAT מאפשרת לנו לשרשר שני ערכים או יותר לערך בודד בו נוכל להשתמש כדי להשוות ולספור.



נוכל להמחיש זאת טוב יותר באמצעות התחביר הבא:

בחר מספר ( CONCAT מובהק ( עמודה1, עמודה2 ) )
FROM table_name;


במקרה זה, עמודה 1 ועמודה 2 מתייחסות לעמודות שברצוננו לשרשר בזמן הספירה וה- table_name מתייחס לשם של טבלת היעד.

ניקח טבלה לדוגמה:

צור מכירות טבלה (
תְעוּדַת זֶהוּת מפתח ראשי INT,
מזהה_לקוח INT,
מזהה_מוצר INT,
תַאֲרִיך תַאֲרִיך
) ;

הכנס לתוך ערכי מכירות
( 1 , 100 , 1 , '2023-05-01' ) ,
( 2 , 101 , 1 , '2023-05-02' ) ,
( 3 , 100 , 2 , '2023-05-02' ) ,
( 4 , 102 , 3 , '2023-05-03' ) ,
( 5 , 101 , 2 , '2023-05-03' ) ,
( 6 , 103 , 2 , '2023-05-04' ) ,
( 7 , 100 , 3 , '2023-05-04' ) ,
( 8 , 102 , 1 , '2023-05-05' ) ,
( 9 , 101 , 3 , '2023-05-05' ) ,
( 10 , 103 , 1 , '2023-05-06' ) ;


טבלה המתקבלת:


כדי לקבוע את מספר השילובים הייחודיים של עמודות הלקוח_מזהה ו-product_id מהטבלה הקודמת, נוכל להשתמש בשאילתה באופן הבא:

בחר מספר ( CONCAT מובהק ( מספר לקוח, '-' , מזהה מוצר ) ) כפי ש תוֹצָאָה
ממכירות;


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


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

סיכום

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