NOT EXISTS

yishay-z

New member
NOT EXISTS

ניסיתי לשלוף מטבלאות מידע שקיים באחת הטבלאות בלבד. ישנו ה-SELECT הפנימי השולף רק את הדוחו"ת הקיימים למשתמש מסוים. לאחר מכן ניסיתי (ללא הצלחה) לשלוף מטבלת הדוחו"ת (FK) את כל הדוחו"ת |שאינם| מקושרים ללקוח הזה. התוצאה - כלום. כאשר שלפתי ע"י EXISTS - קבלתי את |כל| הדוחו"ת, גם אלו שאינם עונים לקריטריונים. כאשר שלפתי ע"י NOT EXISTS - כלום. מישהו מבין בנושא ? צירוף הקוד: CREATE PROCEDURE [DBO].[SP_GET_USER_REPORTS_AVAILABLE] @Guid uniqueidentifier AS SELECT DISTINCT GUID, REPORT_NAME FROM TBL_REPORTS WHERE NOT EXISTS ( SELECT DISTINCT TBL_USER_REPORTS.GUID, TBL_USER_REPORTS.USER_GUID, TBL_USER_REPORTS.REPORT_GUID, TBL_REPORTS.REPORT_ID, TBL_REPORTS.REPORT_NAME FROM TBL_USERS INNER JOIN TBL_USER_REPORTS ON TBL_USERS.GUID = TBL_USER_REPORTS.USER_GUID INNER JOIN TBL_REPORTS ON TBL_USER_REPORTS.REPORT_GUID = TBL_REPORTS.GUID WHERE TBL_USERS.GUID = @Guid ) ORDER BY REPORT_NAME FOR XML RAW GO
 
למעלה