【发布时间】:2012-03-15 03:16:13
【问题描述】:
我有一个选择 charindex 的子字符串的语句,如下所示:
SELECT SUBSTRING(StringField, 5, CHARINDEX('ABC', StringField) - 5)...
WHERE
CHARINDEX('ABC', StringField) > 5
当我在选择查询中运行上述语句时,结果返回得很好。当我在模式绑定索引视图中运行上述语句时,我收到此错误:
Invalid length parameter passed to the LEFT or SUBSTRING function
为了解决这个问题,我将编写一个函数来获取 CharIndex 的最大值和 0,以消除负值的可能性。但是有谁知道为什么 where 子句不会过滤掉 select 语句?
【问题讨论】:
标签: sql database database-indexes