sql >> Database teknologi >  >> RDS >> Mysql

Kombination af mysql-forespørgsler, der genbruger flere selvtilslutninger

SELECT  COUNT(*)
FROM    (
        SELECT  session_id
        FROM    formation_page_hits
        WHERE   progress IN (2, 4, 7)
                AND datetime >= '2011-03-23'
                AND datetime < '2011-03-24'
        GROUP BY
                session_id
        HAVING  COUNT(DISTINCT progress) = 3
        ) q

Opret et sammensat indeks på (session_id, datetime, progress) for at dette kan fungere hurtigt.




  1. En oversigt over JOIN-metoderne i PostgreSQL

  2. kan ikke slette objekt på grund af begrænsning af fremmednøgle

  3. SQL VÆLG AVG

  4. Skriv fil fra BLOB mysql python