从 oracle-sql 中的特定列中删除整个数据
Deleting entire data from a particular column in oracle-sql
最近开始学习Oracle-sql
。我知道在 DELETE
命令的帮助下,我们可以删除特定的行。那么,是否可以仅使用 DELETE
命令从 table 中的特定列中删除整个数据。 (我知道使用 UPDATE
命令通过将空值设置为整个列我们可以实现 DELETE
的功能)。
在 SQL 中,delete
删除行而不是列。
您在 Oracle 中有三个选项:
- 使用更新将所有值设置为
NULL
。
- 从 table 中删除列。
- 将列设置为未使用。
最后两个使用alter table
:
alter table t drop column col;
alter table t set unused (col);
The DELETE statement removes entire rows of data from a specified
table or view
如果您想 "remove" 来自特定列的数据更新它:
UPDATE table_name
SET your_column_name = NULL;
或者如果列是 NOT NULL
UPDATE table_name
SET your_column_name = <value_indicating_removed_data>;
您还可以使用 DDL 删除整个列:
ALTER TABLE table_name DROP COLUMN column_name;
使用来自 oracle 12cR2.
的隐形类型
ALTER TABLE LOG1
MODIFY operation INVISIBLE
它比删除特定的 column.If 要好,您需要可见,您可以通过更改列名称的 VISIBLE
来恢复。
update employee set commission=nvl2(commission,'','')
这将从列中删除所有数据
最近开始学习Oracle-sql
。我知道在 DELETE
命令的帮助下,我们可以删除特定的行。那么,是否可以仅使用 DELETE
命令从 table 中的特定列中删除整个数据。 (我知道使用 UPDATE
命令通过将空值设置为整个列我们可以实现 DELETE
的功能)。
在 SQL 中,delete
删除行而不是列。
您在 Oracle 中有三个选项:
- 使用更新将所有值设置为
NULL
。 - 从 table 中删除列。
- 将列设置为未使用。
最后两个使用alter table
:
alter table t drop column col;
alter table t set unused (col);
The DELETE statement removes entire rows of data from a specified table or view
如果您想 "remove" 来自特定列的数据更新它:
UPDATE table_name
SET your_column_name = NULL;
或者如果列是 NOT NULL
UPDATE table_name
SET your_column_name = <value_indicating_removed_data>;
您还可以使用 DDL 删除整个列:
ALTER TABLE table_name DROP COLUMN column_name;
使用来自 oracle 12cR2.
的隐形类型ALTER TABLE LOG1
MODIFY operation INVISIBLE
它比删除特定的 column.If 要好,您需要可见,您可以通过更改列名称的 VISIBLE
来恢复。
update employee set commission=nvl2(commission,'','')
这将从列中删除所有数据