SQL 再添加一个 OR 后查询执行得非常慢

SQL Query gets executed extremly slow after adding one more OR

我遇到了这个问题,我不得不在搜索查询中添加另一个 Table 来满足我的客户需求。

搜索结果正确,但如果搜索词长度为 3 个或更少字符,搜索过程需要 5 秒(直接在服务器上的 SSMS 工具上测试)

查询如下所示:

SELECT 
    Kundendaten$.ID, 
    Kundendaten$.firmenname1, 
    Kundendaten$.firmenname2, 
    Kundendaten$.strasse, 
    Kundendaten$.uid, 
    Kundendaten$.lkw12t, 
    Kundendaten$.lkw3t, 
    Kundendaten$.gesperrt 
FROM Kundendaten$
LEFT JOIN Kundentyp$ ON Kundendaten$.ID = Kundentyp$.Kunden_ID
WHERE Kundentyp$.ext_kdnr LIKE '%nox%'
   OR ( 
          Kundendaten$.firmenname1 LIKE '%nox%'
       OR Kundendaten$.firmenname2 LIKE '%nox%'
       OR Kundendaten$.suchwort LIKE '%nox%'
       OR Kundendaten$.gehr_kundennummer LIKE '%nox%'
       OR Kundendaten$.kundenummer LIKE '%nox%'
       OR Kundendaten$.uid LIKE '%nox%'
       OR Kundendaten$.ID LIKE '%nox%'
   )
ORDER BY Kundendaten$.ID ASC
OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY

由于我添加了table "Kundentyp$.ext_kdnr"语句

,出现了等待时间长的问题

但话又说回来,如果搜索关键字更具体,搜索只需要几毫秒..

我不知道如何调试这个^^

多亏了Whosebugers的大佬帮忙解决了这个问题

问题是,LEFT JOIN 在我的查询中作为 inner join 执行,可能导致了冲突。

INNER JOIN 的简单更改解决了我的性能问题