SQL-də sorğunu silin

DELETE ifadələri qeydləri silmək üçün istifadə olunur masaları. SELECT və UPDATE ifadələrinə bənzər şəkildə, bu vəziyyətdə, doğru məlumatları silmək üçün doğru WHERE bəndini göstərməliyik. Əks təqdirdə, bütün qeydlər cədvəldən və ya cədvəldən digər düzgün məlumatlar silinəcəkdir.

10-da kitab borc alan BOOK_LOAN-dan qeydləri silmək üçün sorğunu nəzərdən keçirinth May 2015. LOAN_DATE tarixinin 10 olduğu qeydləri almaq üçün BOOK_LOAN cədvəlində sorğu aparmalıyıq.th May və sonra qeydləri silin.

DELETE FROM BOOK_LOAN
WHERE LOAN_DATE = ’10-May-2015’;

Fərz edək ki, yuxarıdakı DELETE bəyanatında heç bir şərt qeyd etməmişik. Sonra bütün qeydləri cədvəldən siləcəkdi.

Tutaq ki, kitabın ikinci nüsxəsi, 'Verilənlər Bazalarının Özü' itib və mövcudluq siyahısında görünməməsi üçün BOOK_COPY cədvəlindən silinməlidir. Bu ifadədən aydın olur ki, 2-ci nüsxə girişini BOOK_COPY cədvəlindən silmək məcburiyyətindəyik. Ancaq kitab adı deyil, yalnız ISBN var. Beləliklə, əvvəlcə verilən kitab adı üçün KİTABLAR cədvəlindən ISBN-i almalı və sonra BOOK_COPY cədvəlindəki qeydləri silməyimiz lazımdır. Beləliklə qeydləri silmək üçün silmək bəyanatımız belə olacaq:

DELETE FROM BOOK_COPY
WHERE COPY_NUM = 2
AND ISBN = (SELECT ISBN FROM BOOKS 
		WHERE BOOK_NAME = ‘The Essence Of Databases’);

Qeydləri silmək üçün DELETE ifadəsinin WHERE bəndində istənilən şərt müəyyən edilə bilər. Hətta dəyərlər aralığını göstərə və qeydlərin silinə biləcəyik.

Kitabxanadan 2014-cü ilə qədər kitabların alındığı qeydləri silmək üçün sorğunu nəzərdən keçirin. Bu o deməkdir ki, 1 yanvar-2014 tarixindən əvvəl cədvələ daxil edilmiş bütün kitab nüsxələrinin cədvəldən silinməsi lazımdır.

TARİHİ ALAN BİTKİ_KOPİYASINDAN SİLİN_DATE <'1-Yanvar-2014';

 

 

Şərh yaz

Translate »