【发布时间】:2012-02-18 22:08:43
【问题描述】:
我有一个索引视图,我基本上需要这样做
SELECT ...
CASE
WHEN ISDATE(ColumnName) = 1 THEN CONVERT(datetime, ColumnName, 103)
ELSE NULL
END AS ViewColumn
....
尝试创建索引产生:
无法在视图上创建索引 ‘……’。功能 'isdate' 产生不确定的结果。使用确定性系统 函数,或修改用户自定义函数返回确定性 结果。
MSDN 说
ISDATE 只有在与 CONVERT 函数一起使用时才具有确定性,
如果指定了 CONVERT 样式参数,并且样式为 不等于 0、100、9 或 109。
这里http://msdn.microsoft.com/en-us/library/ms187347.aspx。
但我根本不知道这意味着什么。据我所知,我将它与 CONVERT 函数一起使用....
有什么办法可以解决这个问题?
【问题讨论】:
标签: sql-server sql-server-2005 indexed-view