【发布时间】:2016-08-18 06:05:40
【问题描述】:
我创建了一个返回 VARCHAR2 变量的函数,它返回的变量在函数本身中输入为 VARCHAR2(200)。
我还创建了一个视图,将该函数用作其中的一列。这会自动将视图中该列的数据类型设置为VARCHAR2(4000)。
这会导致任何性能/存储问题吗?
此外,我最好输入 SUBSTR 以将其限制为应有的 200 个字符吗?
Oracle 11g 顺便说一句。
【问题讨论】:
-
我看不出
varchar2(4000)有什么问题,只要你知道数据实际上比那个短。 -
列级函数调用是“定时炸弹”。取决于它对每条记录的计算量以及结果集返回的行数。
-
@Aishu - OP 在 view 中使用该函数,而不是在表格中。没有问题。