下面这段sql涉及到了三个表的连接查询,其中每个表大概有万行级别的数据,其中大量使用了like,document_summary_normalized.document_summary_normalized 这个字段长度是nvarchar(4000),数据库是sqlserver2K,对这个字段进行全文搜索会不会提高了速度但是损失了准确率?大家有没有好的优化这段查询效率的方法?谢谢了!
select document.written_date, 
       document.document_id 
  from document_participant, 
       document, 
       document_summary_normalized 
 where (((document.document_type = 0) 
             or (document.document_type = 1) 
             or (document.document_type = 2)) 
        and (((document.title_normalized like '%\1\2\3\4\5%' ESCAPE '\')) 
             or ((document.al_title_normalized like '%\1\2\3\4\5%' ESCAPE '\')) 
             or ((document_summary_normalized.document_summary_normalized like '%\1\2\3\4\5%' ESCAPE '\')) 
             or ((document.keyword_normalized like '%\1\2\3\4\5%' ESCAPE '\')) 
             or (((document_participant.participant_type = '6') 
                    and (document_participant.participant_name_normalized like '%\1\2\3\4\5%' ESCAPE '\'))) 
             or (((document_participant.participant_type = '6') 
                    and (document_participant.participant_al_name_normalized like '%\1\2\3\4\5%' ESCAPE '\'))) 
             or (((document_participant.participant_type = '7') 
                    and (document_participant.participant_name_normalized like '%\1\2\3\4\5%' ESCAPE '\'))) 
             or (((document_participant.participant_type = '7') 
                    and (document_participant.participant_al_name_normalized like '%\1\2\3\4\5%' ESCAPE '\'))) 
              ) 
             ) 
   and 1 = 1 
   and document.document_id = document_participant.document_id 
   and document.document_id = document_summary_normalized.document_id 
 order by document.written_date desc, 
          document.document_id asc