0
一個全文索引我有如下表:計算列與格式化過的時間
[dbo].[TableName]
(
[created] datetime not null,
[modified] datetime null,
[computedValue] as
(
format([created], 'yyy-MM-dd MM/dd/yyy') +
case when ([modified] is not null)
then
(format([modified], 'yyyy-MM-dd MM/dd/yyyy'))
end
)
當我試圖改變這個表全文索引出現問題。
ALTER FULLTEXT INDEX ON [dbo].[TableName] ADD ([computedValue] LANGUAGE 1033);
對此,我得到以下錯誤:
Computed column 'computedValue' cannot be used for full-text search because it is nondeterministic or imprecise nonpersisted computed column.
根據MSDN: https://msdn.microsoft.com/en-us/library/ms181984(v=sql.110).aspx
「全內置字符串函數是確定性的。」 所以我爲了說這個專欄不是確定性的,而絞盡腦汁。
這個答案顯示了'FORMAT)大量的研究(',其狀態爲'確定性與非確定性':http://stackoverflow.com/a/37695342/5089204 – Shnugo