SQL 查询花费的时间太长,甚至没有响应

USD{xm}

这是查询:

USDIMP

当我通过删除 SQL> desc airport Name Null? Type ----------------------------------------- -------- ---------------------------- AIRPORT_ID NOT NULL NUMber(5) CITY_ID NOT NULL NUMber(5) AIRPORT VARCHAR2(59) IATA_CODE VARCHAR2(3) SQL> desc city Name Null? Type ----------------------------------------- -------- ---------------------------- CITY_ID NOT NULL NUMber(5) COUNTRY_ID NOT NULL NUMber(5) CITY VARCHAR2(36) SQL> desc country Name Null? Type ----------------------------------------- -------- ---------------------------- COUNTRY_ID NOT NULL NUMber(5) COUNTRY VARCHAR2(36) 使用 select airport_id,airport,iata_code,city,country from airport a,city b,country c where a.city_id = b.city_id and b.country_id = c.country_id and b.city like '%tehran%' or iata_code like '%tehran%' order by airport asc; 之类的参数运行相同查询时,此查询没有响应或通话分钟响应,然后它运行良好,结果不到一秒

为什么它不响应两个参数,例如and b.city like '%tehran%'

hyswsh 回答:SQL 查询花费的时间太长,甚至没有响应

看起来像你想要的

select airport_id,airport,iata_code,city,country 
from airport a
join city b on a.city_id=b.city_id and (b.city like '%tehran%' or b.iata_code like '%tehran%')
join country c on b.country_id=c.country_id 
order by airport asc;

注意 SQL 标准 JOIN 语法和使用括号固定的逻辑 AND/OR 操作的顺序。

本文链接:https://www.f2er.com/4967.html

大家都在问