我試圖創建一個索引視圖,並收到以下錯誤創建索引:的SQL Server索引視圖列精度
無法對視圖 創建索引......」 因爲列‘金額’ WHERE或GROUP BY子句中的視圖所引用的內容不精確。考慮從視圖中刪除列 ,或將列更改爲精確。
有問題的列的數據類型爲real
,我猜是問題所在?
解決此問題的適當方法是什麼?我可以在視圖SQL中進行轉換以消除「不精確性」嗎?
視圖SQL低於指定:
EXEC('
CREATE VIEW model.ReceivableBillableParties
WITH SCHEMABINDING
AS
SELECT pf.Id AS Id
, pf.InsuranceId AS InsuranceId
, pf.FinancialInsType AS InsuranceType
, pr.ReceivableId
FROM dbo.Receivables pr
INNER JOIN dbo.Demographics pd ON pd.PersonId = pr.PersonId
INNER JOIN dbo.Appointments ap ON ap.AppointmentId = pr.AppointmentId
INNER JOIN dbo.Financiasl pf ON pf.PersonId = pf.PersonId
INNER JOIN dbo.PracticeInsurers pri ON pri.InsurerId = pf.FinancialInsurerId
WHERE pri.Amount = 0
')
EXEC('
CREATE UNIQUE CLUSTERED INDEX [IX_ReceivableBillableParties]
ON model.ReceivableBillableParties ([Id]);
')
您需要指定SQL Server版本....和您的視圖定義。我不應該提醒你,他們是必需的(考慮到你使用的時間長度)... –
我很高興地提供你需要的任何信息。如果你想成爲斯尼德或居高臨下的人,可以去別的地方,以某種形式的教練來提升自我。您的幫助不被讚賞。 – Jeff
而以100k +的名譽,你會認爲很明顯像「我不應該提醒你」這樣的評論確實不具有建設性。 – Jeff