מאמרים
  • Register
תנו לנו לייק וקבלו עדכונים ישירות לפיד

שימוש באופרטור like כדי לזהות תבניות של כרטיסי אשראי

פורסם על ידי ב ב קטגוריה ראשית
  • גודל פונט: Larger Smaller
  • Hits: 3889
  • 0 תגובות
  • עשו מנוי לעדכונים מהבלוג
  • Print

לפני זמן מה פנה אלי לקוח בבקשה מעניינת:

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

 

לדוגמא, קובץ האקסל יכול להכיל:

תבנית סיווג
4580 XX22 7344 2264 סיווג 1
4580 X324 73XX 2274 סיווג 2
4580 5555 XX44 2234 סיווג 3

 

*הערך X מסמן ספרה כלשהי.

 

בהינתן הדוגמא של קובץ האקסל, מספר כרטיס האשראי 4580 3322 7344 2264 ישויך לסיווג 1, בעוד שמספר כרטיס האשראי 4580 6324 7311 2274 ישויך לסיווג 2.

 

כמובן שהדרך לבצע זאת היא באמצעות האופרטור like.

תזכורת:

השימוש בlike מיועד למצוא מחרוזות על סמך תבניות כאשר בתבנית הערך _ מסמן תו אחד וערך % מסמן מחרוזת באורך כלשהו.

לדוגמא:

‘My name is Eli’ like ‘%name is%’ תחזיר True.

‘My name is Eli’ like ‘___name is Eli’ תחזיר True.

כדי לפתור את הדרישה מהלקוח, ניתן היה להחליף את הX ב_ ולהשתמש בcase.

לדוגמא:

  

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

נשתמש בפתרון אחר:

השימוש במחרוזות בlike הוא דבר מוכר על ידי רוב האנשים המשתמשים בשפת SQL. אך דבר שרבים לא יודעים הוא שהמחרוזת המכילה את התבנית (כגון  '___name is%') בעצמה יכולה להיות ערך בתוך DB.

לצורך עניין זה,  טענו את קובץ האקסל לטבלה: לצורך העניין נקרא לה Templates, המכילה את המחרוזת בשדה STR ואת הסיווג בשדה Sivug.

כעת עלינו רק לחבר את שתי הטבלאות באמצעות האופרטור like.

לדוגמא:

 

 

הערות:

1.      שיטה זאת תעבוד הן בSql Server והן באורקל.

2.      יש להיזהר לא לטעון לטבלת התבניות 2 ערכים זהים מבחינה לוגית לטבלת התבניות. לדוגמא, אם נטען שני ערכים :  4580 XX35 6678 3445 וכן 4580 %35 6678 3445 , הופעה של 4580 4435 6678 3445 כרטיס אשראי  תגרום להכפלת רשומות.

תגובות

  • אין תגובות עדיין לידיעה זאת. מדוע שלא תהיה זה שיגיב ראשון?

כיתבו תגובה

Guest שבת, 19 אוגוסט 2017

Sap

Oracle

Informatica

SAS

Microstrategy

IBM

Microsoft

Qlikview

Teradata

Webfocus

קליק אחד ואתם מחוברים. מהיר .קל .מאובטח.

מעניין? שתפו דף זה באמצעות הטלפון הנייד

שימוש באופרטור like כדי לזהות תבניות של כרטיסי אשראי - מערכת הבלוגים של אתר dwh.co.il - QR Code Friendly
Powered by QR Code Friendly

מאמרים

מגמות של ביג דאטה בעולם הביטוח
CA Technologies
SSIS - Buffer Size Optimization
קטגוריה ראשית
בדיקות BI ו-DWH לעומת הבדיקות בתחומים אחרים
קטגוריה ראשית
איסוף דרישות לפרויקטי BI
קטגוריה ראשית
כח המידע במיקוד
קטגוריה ראשית
0

הדף שלנו בפייסבוק

התחברות

כניסות למאמרים
6491490