SQL সার্ভারে DELETE স্টেটমেন্ট (Transact-SQL) SQL সার্ভারের একটি টেবিল থেকে এক বা একাধিক রেকর্ড মুছে ফেলার জন্য ব্যবহার করা হয়।
এসকিউএল সার্ভারে কমান্ড সিনট্যাক্স মুছুন
DELETE কমান্ডের সহজ সিনট্যাক্স নিম্নরূপ।
DELETE FROM bang
[WHERE dieu_kien];
DELETE কমান্ডের সম্পূর্ণ সিনট্যাক্স নিম্নরূপ।
DELETE [TOP (giatri_dau) [PERCENT] ]
FROM bang
[WHERE dieu_kien
];
ভেরিয়েবলের নাম বা পরিবর্তনশীল মান
state
টেবিলটি রেকর্ড মুছে ফেলতে হবে৷
৷WHERE dieu_kien
বিকল্প৷ মুছে ফেলার জন্য রেকর্ডটি অবশ্যই পূরণ করতে হবে।
TOP (giatri_dau)
বিকল্প৷ যদি বিশেষভাবে, এটি giatri_dau এর উপর ভিত্তি করে সারির প্রথম মান সন্নিবেশ করবে। উদাহরণস্বরূপ, TOP (10) ফলাফল সেট থেকে প্রথম 10টি সারি সন্নিবেশ করবে৷
PERCENT৷
বিকল্প৷ যদি নির্দিষ্ট করা থাকে, প্রথম সারিগুলি ফলাফল সেটের giatri_dau-এর শতাংশের উপর ভিত্তি করে। উদাহরণস্বরূপ, TOP (10) PERCENT ফলাফল সেটে প্রথম মানের 10% সন্নিবেশ করবে।
দ্রষ্টব্য
DELETE বিবৃতিতে ক্ষেত্রগুলি তালিকাভুক্ত করার প্রয়োজন নেই কারণ আপনি টেবিলের সমস্ত সারি মুছে দেবেন৷
উদাহরণস্বরূপ - ১টি শর্ত ব্যবহার করুন
DELETE FROM nhanvien
WHERE ten = 'Sarah';
এই কমান্ডটি সারাহ নামের সারণীর সমস্ত রেকর্ড মুছে ফেলবে৷
আপনি যদি মুছে ফেলা আইটেমের সংখ্যা পরীক্ষা করতে চান, ডিলিট কমান্ডটি কার্যকর করার আগে SELECT কমান্ডটি চালান৷
SELECT hasun (*)
FROM nhanvien
WHERE ten = 'Sar
ah';
উদাহরণস্বরূপ - 2টি শর্ত ব্যবহার করুন
DELETE FROMnhanvien
WHERE ho = 'Johnson'
AND nhanvien_id >
= 80;
এই কমান্ডটি টেবিলের সমস্ত রেকর্ড মুছে ফেলবে যদি স্টাফের নাম জনসন হয় এবং nhanvien_id 80 এর থেকে বড় বা সমান হয়।
মোছা সারির সংখ্যা জানতে, DELETE কমান্ডটি চালানোর আগে নীচের SELECT স্টেটমেন্টটি চালান৷
SELECT count (*)
FROM nhanvien
WHERE ho = 'Johnson'
AND nhanvien_id
> = 80;
উদাহরণস্বরূপ - TOP কীওয়ার্ড ব্যবহার করুন
DELETETOP(3)
FROM nhanvien
WHERE ho =
'Johnson';
এটি টেবিলের প্রথম 3টি রেকর্ড মুছে ফেলবে যখন কর্মচারীর পরিবারের নাম জনসন হবে৷ যদি এই টেবিলে জনসনের পারিবারিক নাম থাকে এমন অন্যান্য রেকর্ড থাকে, তাহলে তারা এই মুছে ফেলার দ্বারা প্রভাবিত হবে না৷
উদাহরণস্বরূপ - EXISTS ধারা ব্যবহার করুন
আপনি আরও জটিল ডিলিট কমান্ড সম্পাদন করতে পারেন, যেমন অন্য টেবিলের মানের উপর ভিত্তি করে একটি টেবিলের রেকর্ড মুছে ফেলা, উদাহরণস্বরূপ। যেহেতু ডিলিট স্টেটমেন্টে FROM ক্লজে একাধিক টেবিল রেন্ডার করা অসম্ভব, তাই EXISTS ক্লজটি নিম্নরূপ ব্যবহার করা যেতে পারে।
DELETE FROMnhanvien
WHERE EXISTS
(SELECT *
FROM danhba
WHERE danhba.danhba_id = nhanvien.nhanvien_id
AND danhba.danhba_id
<100);
এই DELETE বিবৃতিটি টেবিলের সমস্ত রেকর্ড মুছে ফেলবে যখন নামের তালিকায় লিসেনার_আইডি 100-এর কম এবং list_id nhanvien_id মেলে।
আপনি যদি মুছে ফেলা লাইনের সংখ্যা নির্ধারণ করতে চান, মোছার আগে SELECT কমান্ডটি চালান৷
SELECTcount (*)
FROM nhanvien
WHERE EXITS
(SELECT *
FROM danhba
WHERE danhba.danhba_id = nhanvien.nhanvien_id
AND danhba.da
nhba_id <100);