sql >> Database >  >> RDS >> Mysql

Buitenste kolomwaarde selecteren in samengevoegde subquery?

Uw innerlijke query is een gecorreleerde subquery, maar kan tabel1 helemaal niet zien. Dit is een beperking op MySQL - zie MySQL-handleiding - D. 3. Beperkingen op subquery's . Ongeveer halverwege staat:

Hoewel de subquery deel uitmaakt van een LEFT JOIN-expressie, maakt deze deel uit van de FROM-component.

Deze herformulering zou het werk voor u kunnen doen:

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



  1. SQL Query Doe mee in CodeIgniter

  2. MySQL ORDER BY Datumveld dat geen datumnotatie heeft

  3. Verbind MySQL met Python 3.6

  4. Als u een opgeslagen functie of procedure aanroept, worden wijzigingen niet ingevoegd en behouden