我已将查询范围缩小到:
select * FROM items where accountid=4755 and (itemId like N'%9976%' or [description] like N'%9976%' or fulldescription like N'%9976%' )
两个'描述'和' FullDescription'已经从nvarchar(max)缩小到nvarchar(4000)。
似乎我仍然无法建立索引,因为它太大了(不能再低了)。此外,如果我删除“描述”和“#39;或者' FullDescription'它工作得很快,所以缓慢是复合效应。此外,没有LIKE条件的此查询在相对较小的数据库中仅包含1,000行。
答案 0 :(得分:0)
我们最终得到的结果类似于Amir在此提出的内容。由于98%的数据非常短,我们创建了另外两列nvarchar(450),它满足900字节限制,然后为它们创建了索引。
我们在Azure上托管,时间紧迫,所以我们没有考虑自由文本搜索。我们还遇到了Azure搜索服务,它可能适合这种情况,但这需要耗费时间的POC。
谢谢大家。