इस लेख में SQL DELETE
को सूचीबद्ध किया गया है सिंटैक्स, जैसा कि विभिन्न डेटाबेस प्रबंधन प्रणालियों (DBMS) द्वारा कार्यान्वित किया जाता है। सिंटैक्स को ठीक उसी तरह सूचीबद्ध किया गया है जैसे प्रत्येक विक्रेता ने इसे अपनी वेबसाइट पर सूचीबद्ध किया है। किसी विशेष विक्रेता के सिंटैक्स के बारे में अधिक विवरण देखने के लिए लागू लिंक पर क्लिक करें।
कवर किए गए DBMS में MySQL, SQL Server, PostgreSQL और Oracle डेटाबेस शामिल हैं।
MySQL
MySQL 5.7 संदर्भ मैनुअल से।
सिंगल-टेबल सिंटैक्स:
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROMtbl_name
[PARTITION (partition_name
,...)] [WHEREwhere_condition
] [ORDER BY ...] [LIMITrow_count
]
एकाधिक-तालिका सिंटैक्स:
DELETE [LOW_PRIORITY] [QUICK] [IGNORE]tbl_name
[.*] [,tbl_name
[.*]] ... FROMtable_references
[WHEREwhere_condition
]
या:
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROMtbl_name
[.*] [,tbl_name
[.*]] ... USINGtable_references
[WHEREwhere_condition
]
एसक्यूएल सर्वर
Transact-SQL संदर्भ से:
[ WITH <common_table_expression> [ ,...n ] ] DELETE [ TOP ( expression ) [ PERCENT ] ] [ FROM ] { { table_alias | <object> | rowset_function_limited [ WITH ( table_hint_limited [ ...n ] ) ] } | @table_variable } [ <OUTPUT Clause> ] [ FROM table_source [ ,...n ] ] [ WHERE { <search_condition> | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } ] [ OPTION ( <Query Hint> [ ,...n ] ) ] [; ] <object> ::= { [ server_name.database_name.schema_name. | database_name. [ schema_name ] . | schema_name. ] table_or_view_name }
पोस्टग्रेएसक्यूएल
PostgreSQL 9.5 मैनुअल से:
[ WITH [ RECURSIVE ] with_query [, ...] ] DELETE FROM [ ONLY ] table_name [ * ] [ [ AS ] alias ] [ USING using_list ] [ WHERE condition | WHERE CURRENT OF cursor_name ] [ RETURNING * | output_expression [ [ AS ] output_name ] [, ...] ]
Oracle डेटाबेस
Oracle डेटाबेस ऑनलाइन दस्तावेज़ीकरण 12c . से रिलीज़ 1 (12.1):
DELETE [ hint ] [ FROM ] { dml_table_expression_clause | ONLY (dml_table_expression_clause) } [ t_alias ] [ where_clause ] [ returning_clause ] [error_logging_clause];
DML_table_expression_clause::=
{ [ schema. ] { table [ partition_extension_clause | @ dblink ] | { view | materialized view } [ @ dblink ] } | ( subquery [ subquery_restriction_clause ] ) | table_collection_expression }
partition_extension_clause::=
{ PARTITION (partition) | PARTITION FOR (partition_key_value [, partition_key_value]...) | SUBPARTITION (subpartition) | SUBPARTITION FOR (subpartition_key_value [, subpartition_key_value]...) }
subquery_restriction_clause::=
WITH { READ ONLY | CHECK OPTION } [ CONSTRAINT constraint ]
table_collection_expression::=
TABLE (collection_expression) [ (+) ]
where_clause::=
WHERE condition
रिटर्निंग_क्लॉज ::=
{ RETURN | RETURNING } expr [, expr ]... INTO data_item [, data_item ]...
error_logging_clause ::=
LOG ERRORS [ INTO [schema.] table ] [ (simple_expression) ] [ REJECT LIMIT { integer | UNLIMITED } ]
DELETE
के बारे में कथन
DELETE
स्टेटमेंट एक डेटा मैनिपुलेशन लैंग्वेज (डीएमएल) स्टेटमेंट है जो एक टेबल से निर्दिष्ट पंक्तियों को हटा देता है।
हटाएं स्टेटमेंट उन पंक्तियों को हटा देता है जो WHERE . को संतुष्ट करती हैं निर्दिष्ट तालिका से खंड। अगर कहां खंड अनुपस्थित है, तालिका की सभी पंक्तियों को हटा दिया जाएगा, तालिका को खाली छोड़ दिया जाएगा।
युक्ति
TRUNCATE
स्टेटमेंट (या SQL सर्वर के मामले में, TRUNCATE TABLE
स्टेटमेंट ) DELETE
. के समान है बिना किसी WHERE
. वाला स्टेटमेंट खंड; हालांकि, TRUNCATE
तेज़ है और कम सिस्टम और लेन-देन लॉग संसाधनों का उपयोग करता है।