logo

SQL מחק

ה הצהרת SQL DELETE משמש למחיקת שורות מטבלה. בדרך כלל הצהרת DELETE מסירה רשומה אחת או יותר מטבלה.

תחביר SQL DELETE

בוא נראה את התחביר של הצהרת SQL DELETE:

 DELETE FROM table_name [WHERE condition]; 

כאן table_name הוא הטבלה שיש למחוק. ה סעיף WHERE ב-SQL משפט DELETE הוא אופציונלי כאן.


SQL DELETE דוגמה

הבה ניקח שולחן, בשם שולחן 'עובד'.

תְעוּדַת זֶהוּתEMP_NAMEעִירשכר
101אדרש סינגאתר הבנייה20000
102סנג'אי סינגמירות21000
103פרייאנקה שארמהריפור25,000
104אשה סינגהלדלהי26000

דוגמה למחיקה עם סעיף WHERE ניתנת להלן:

 DELETE FROM EMPLOYEE WHERE ID=101; 

הטבלה המתקבלת לאחר השאילתה:

תְעוּדַת זֶהוּתEMP_NAMEעִירשכר
102סנג'אי סינגמירות21000
103פרייאנקה שארמהריפור25,000
104אשה סינגהלדלהי26000

דוגמה נוספת להצהרת מחיקה ניתנת להלן

 DELETE FROM EMPLOYEE; 

הטבלה המתקבלת לאחר השאילתה:

תְעוּדַת זֶהוּתEMP_NAMEעִירשכר

זה ימחק את כל הרשומות של טבלת העובדים.

זה ימחק את כל הרשומות של טבלת העובדים שבה המזהה הוא 101.

משפט WHERE במשפט SQL DELETE הוא אופציונלי והוא מזהה את השורות בעמודה שנמחקות.

משפט WHERE משמש למניעת מחיקה של כל השורות בטבלה, אם לא תשתמש במשפט WHERE אתה עלול לאבד את כל השורות.


הצהרת DELETE לא חוקית עבור מסד הנתונים של ORACLE

לא ניתן להשתמש בסמל * (כוכבית) כדי למחוק את כל הרשומות.

 DELETE * FROM EMPLOYEE; 

נושאים של הצהרת SQL DELETE

SQL מחק טבלה

איך מוחקים את הטבלה ומה ההבדל בין הצהרת DELETE ל-TRUNCATE?

SQL מחק שורה

כיצד למחוק שורה ממסד הנתונים?

SQL מחק את כל השורות

כיצד למחוק את כל השורות בטבלה?

SQL DELETE שכפול שורות

כיצד להשתמש במילת מפתח נפרדת כדי למחוק את כל השורות הכפולות מהטבלה?

SQL מחק מסד נתונים

לא נעשה שימוש במשפט DELETE כדי למחוק את מסד הנתונים. אבל יש משפט DROP בשימוש כדי למחוק את מסד הנתונים.

SQL DELETE תצוגה

כיצד למחוק את התצוגה ממסד הנתונים?

SQL DELETE JOIN

כיצד להשתמש בהצהרת מחיקה עם INNER JOIN?