0

好的......这就是我所拥有的。有一个 Oracle 数据库表,其中有一列是一种VARCHAR数据类型。此列称为“值”,包含代表不同事物的不同值的字符串。所以有些记录在这个列中有一个数字,其他的有科学记数法,其他的日期,其他的实际字符等,但它们都将作为字符串存储在这个“值”列中。

我需要编写一个可以查询该表并确定“值”列中的字符串表示什么数据类型的视图。我知道我可以执行 PL/SQL 来执行此操作,但我无权创建存储过程,并且这需要在视图中 - 出于其他原因。

4

1 回答 1

1

我认为您需要有一个额外的列来描述存储在Value列中的值

 Value       VARCHAR2,
 ValueType   VARCHAR2  -- e.g. Age, Name, Money

在您看来,然后您使用 CASE 语句来确定

 CASE 
    WHEN ValueType = 'Age' THEN 'integer'
    WHEN ValueType = 'Name' THEN 'string'
    WHEN ValueType = 'Money' THEN 'decimal'
 END As ColumnValueType

您还可以使用正则表达式

于 2012-09-29T22:05:20.727 回答