आवश्यक: एमएस एक्सेस 2010 में निम्न तालिकाओं बनाएँ:एमएस एक्सेस: कहां-EXISTS-Clause विचारों पर काम नहीं कर रहा है?
CREATE TABLE ATBL(ID INT);
INSERT INTO ATBL(ID) VALUES (1);
INSERT INTO ATBL(ID) VALUES (2);
INSERT INTO ATBL(ID) VALUES (3);
CREATE TABLE BTBL(ID INT);
INSERT INTO BTBL(ID) VALUES (1);
INSERT INTO BTBL(ID) VALUES (2);
इसके अलावा एक दृश्य कहा BVIEW जो निम्नलिखित SELECT कथन का उपयोग करता है बनाने के लिए:
SELECT A.ID FROM ATBL AS A WHERE A.ID = 1 OR A.ID = 2
अब BVIEW BTBL रूप में एक ही सामग्री होनी चाहिए। फिर भी निम्न दो प्रश्नों अलग परिणाम वापस आ जाएगी:
SELECT A.ID FROM ATBL AS A WHERE EXISTS (SELECT 1 FROM BTBL AS B WHERE B.ID=A.ID)
SELECT A.ID FROM ATBL AS A WHERE EXISTS (SELECT 1 FROM BVIEW AS B WHERE B.ID=A.ID)
पहली क्वेरी दो रिकॉर्ड (1 और 2), लेकिन दूसरी क्वेरी ATBL से सभी रिकॉर्ड रिटर्न देता है। यहाँ क्या गलत है? क्या मैं कुछ भूल रहा हूँ?
FWIW आपका कोड SQL सर्वर पर अपेक्षित के रूप में कार्य करता है। – onedaywhen