समस्या:
आप किसी तालिका से एक पंक्ति/पंक्तियाँ हटाना चाहते हैं।
उदाहरण 1:
exam
तालिका, छात्रों के नाम और परीक्षा के परिणाम हैं।
नाम | <थ>परिणाम|
---|---|
जेनेट मोर्गन | 9 |
ताया बैन | 11 |
ऐनी जॉनसन | 11 |
जोश कौर | 10 |
एलेन थॉर्नटन | 8 |
आप एलेन थॉर्नटन के लिए पंक्ति को हटाना चाहते हैं।
समाधान 1:
DELETE FROM exam WHERE name = 'Ellen Thornton';
तालिका exam
अब ऐसा दिखता है:
नाम | <थ>परिणाम|
---|---|
जेनेट मोर्गन | 9 |
ताया बैन | 11 |
ऐनी जॉनसन | 11 |
जोश कौर | 10 |
चर्चा:
DELETE FROM
का उपयोग करें उस तालिका के नाम के साथ जिससे आप एक पंक्ति हटाना चाहते हैं। WHERE
. में , पंक्ति निर्दिष्ट करने वाली शर्त लिखें। यदि आपके मन में एक विशिष्ट पंक्ति है, तो अद्वितीय मानों वाले कॉलम का उपयोग करके शर्त लिखना सबसे अच्छा है। यहाँ, अद्वितीय कॉलम है name
।
अगर ऐसी कई पंक्तियाँ हैं जिनका नाम 'Ellen Thornton
. के बराबर है ', उन सभी को हटा दिया जाएगा। यदि ऐसा कोई नाम नहीं है, तो कोई पंक्तियाँ नहीं हटाई जाती हैं।
उदाहरण 2:
exam
तालिका, पिछले उदाहरण की तरह ही छात्रों के नाम और परीक्षा के परिणाम हैं।
नाम | <थ>परिणाम|
---|---|
जेनेट मोर्गन | 9 |
ताया बैन | 11 |
ऐनी जॉनसन | 11 |
जोश कौर | 10 |
एलेन थॉर्नटन | 8 |
आप उन सभी पंक्तियों को हटाना चाहते हैं जिनके लिए result
10
. से बड़ा है ।
समाधान 2:
DELETE FROM exam WHERE result > 10;
exam
तालिका अब इस तरह दिखती है:
नाम | <थ>परिणाम|
---|---|
जेनेट मोर्गन | 9 |
जोश कौर | 10 |
एलेन थॉर्नटन | 8 |
चर्चा:
कभी-कभी, आपको ठीक-ठीक पता नहीं होता है कि आपको किन पंक्तियों को हटाना है या कितनी पंक्तियों को निकालना है। आप वह शर्त लिख सकते हैं जिसके लिए पंक्तियों को हटाया जाना चाहिए। शर्त को पूरा करने वाली कई पंक्तियाँ हो सकती हैं, यह केवल एक पंक्ति हो सकती है, या कोई पंक्तियाँ नहीं हो सकती हैं।
बेशक, आप WHERE
. में कई शर्तें लिख सकते हैं , उनके साथ AND
. के साथ जुड़ना या OR
, उदाहरण के लिए:
DELETE FROM exam WHERE result > 10 AND name LIKE 'J%';