如何从 table 中删除存储为 varchar2 的数字
How to delete from table with number stored as varchar2
这可能是一个愚蠢的问题,但我们开始吧。
假设我有一个 table 'MyTable',其中一列 'Number' 存储为 varchar2。有什么方法可以从 table 中删除 'Number' 中的值小于我的输入的行吗?
像这样:
delete from MyTable where Number<'MyValueAsVarchar2'
例如,我有一条记录“5”。
delete from MyTable where Number<'7'
此语句删除该行。
但是,如果我将“7”替换为“10”,它就不再起作用了。 (我猜是因为'1'小于'5')
我正在使用 Oracle。
您可以使用 TO_NUMBER 函数将 varchar2 转换为数字:
从 MyTable 中删除 TO_NUMBER(Number)<7
这可能是一个愚蠢的问题,但我们开始吧。
假设我有一个 table 'MyTable',其中一列 'Number' 存储为 varchar2。有什么方法可以从 table 中删除 'Number' 中的值小于我的输入的行吗?
像这样:
delete from MyTable where Number<'MyValueAsVarchar2'
例如,我有一条记录“5”。
delete from MyTable where Number<'7'
此语句删除该行。
但是,如果我将“7”替换为“10”,它就不再起作用了。 (我猜是因为'1'小于'5')
我正在使用 Oracle。
您可以使用 TO_NUMBER 函数将 varchar2 转换为数字:
从 MyTable 中删除 TO_NUMBER(Number)<7