sql >> Base de Datos >  >> RDS >> Mysql

¿Valor de columna de selección externa en la subconsulta unida?

Su consulta interna es una subconsulta correlacionada, pero no puede ver la tabla 1 en absoluto. Esta es una restricción en MySQL; consulte Manual de MySQL - D. 3. Restricciones en subconsultas . Aproximadamente a la mitad, dice:

Aunque la subconsulta es parte de una expresión LEFT JOIN, esto es parte de la cláusula FROM.

Esta reformulación podría hacer el trabajo por usted:

SELECT table1.id, 
       (SELECT COUNT(*)
        FROM table2
        WHERE table2.lt > table1.lt
        AND table2.rt < table1.rt) AS cnt
FROM table1;