Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL डिलीट त्रुटि के बजाय तालिका को साफ करता है

बाहरी से आंतरिक क्वेरी में ColumnA के बीच संबंध के कारण, यह अपेक्षा के अनुरूप काम करता है।

यह आमतौर पर इस्तेमाल किया जाने वाला सहसंबद्ध क्वेरी पैटर्न मान्य है

DELETE TableA WHERE NOT EXISTS (select * from TableB where TableB.ID=TableA.ID)

यह TableA प्रविष्टियों को हटा देता है जिनका TableB में आश्रित रिकॉर्ड नहीं है।

यह दर्शाता है कि आप एक सहसंबद्ध क्वेरी में TableA कॉलम का संदर्भ दे सकते हैं। आपकी क्वेरी में

delete TableA where ColumnA in (select ColumnA from TableB)

आंतरिक क्वेरी उत्पन्न हो रही है

  • टेबलबी में प्रत्येक रिकॉर्ड के लिए एक पंक्ति
  • प्रत्येक पंक्ति के लिए एक कॉलम, जिसका मान बाहरी क्वेरी से ColumnA है

तो DELETE आगे बढ़ता है



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. लिंक किए गए सर्वर का रिमोट सर्वर नाम खोजने के लिए टी-एसक्यूएल

  2. JDBC का उपयोग करना जब सर्वर नाम में बैकस्लैश होता है (लोकलहोस्ट \ TESTDATA)

  3. बाधाओं की जाँच करें:TRY/CATCH बनाम Exists ()

  4. SQL सर्वर में सर्वर ट्रिगर कहाँ सहेजता है?

  5. SQL सर्वर को समझना हमेशा एन्क्रिप्टेड