2013-08-21 36 views
2

如何在Oracle中删除表,但我想在查询中使用where条件;例如:在Oracle 10g中删除表,但在条件下使用

drop table employees where employee_id='100'; 

这可能吗?

+0

如果你只是想删除一些行,按本的答案使用'DELETE'。如果要删除包含该员工的整个分区,则可以使用“DROP PARTITION”(http://docs.oracle.com/cd/E11882_01/server.112/e25523/part_admin002.htm#i1007479) –

回答

11

您不希望DROP该表;删除表格会删除整个表格及其中的所有数据。

看起来好像你想从表中删除一些行。如果是这样的话,你应该使用DELETE声明:

delete from employees where employee_id = 100; 

这可能是值得研究的一些basic functionality或继续之前服用一个疗程。

顺便提一句,100是一个数字。使用'意味着它是一个字符串。如果列EMPLOYEE_ID的数据类型是一个数字,则不需要引用它。

+1

1+你的解释,这些天罕见的人做那 – Moudiz

+1

我总是做@Moudiz :-)。 – Ben

2

如果您需要删除表格,则无需检查某些条件。

如果您需要指定where子句,您可能正在寻找删除某些行。更好地使用删除。

使用条件来检查放置表是一件新事物,我现在要试一试。

+0

我尝试过,但没有运气......它给ORA0093 –