Computed Column Üzerine Filtered Index Tanımlama

Reading Time: 1 minute

SQL Server Hata Mesajlarından 10609 Id li hata mesajı üzeirnden hem hesaplanmış sütunları hem de bu sütunlar üzerine konulamayan Filtered Index ‘i örnekler üzeirnden göstereceğim.

Bir tablomuz ve bu tablomuz içrisinde bir hesaplanmış kolonumuz mevcut. Biz bu tablo üzerine bir index koymak istiyoruz fakat bu index imizi sınırlı data üzeirne koymak istediğimizden ötürü Filtered bir index kullanacağız.  Koşulumuzu da bu hesaplanmış sütun üzeirnden yapmak istiyoruz.

Filtered Index leri anlattığım geniş çaplı makalem için tıklayınız.

Bir adet temp bir tablo oluşturalım ,

Oluşturduğumuz temp tablo üzerine bir adet filtered Index tanımlamaya çalışalım.

Aşağıda da gördüğünüz üzere  hata mesajı fırlattı.

HATA MESAJI :

Msg 10609, Level 16, State 1, Line 74
Filtered index ‘NIX_SQLTR_SomeDate’ cannot be created on table ‘#Sample_Data’ because the column ‘TotalCost’ in the filter expression is a computed column. Rewrite the filter expression so that it does not include this column.

Mesaj dan da anlaşılacağı üzere hesaplanmış kolonlar üzerine filtered ındex tanımlaması yapılamıyor. Şimdi şu soruyu sorduğunuzu duyar gibiyim. Peki normal index tanımlayabiliyor muyuz ?

Evet normal Indexleme yapabiliyorsunuz.

Leave a Reply

Your email address will not be published. Required fields are marked *