MySQL 查询独立运行,但不能作为 IN 子查询运行

MySQL query works on its own but not as an IN subquery

我有以下 MySQL 查询:

SELECT 
*
FROM
    nav_foreign_port_view
WHERE
    country_code IN (SELECT DISTINCT
            country_code
        FROM
            carrier_regions cr,
            carrier_region_associate cra
        WHERE
            SCAC = 'SUDU'
                AND cra.region_id = cr.region_id)
ORDER BY city_name ASC , country_name ASC;

当我 运行 它时,我收到消息

Error Code: 1054. Unknown column 'country_code' in 'IN/ALL/ANY subquery'

但是,当我 运行 IN 子查询独立运行时,它工作正常。

这是怎么回事?

您在 nav_foreign_port_view 中没有名为 country_code 的列。