sql >> Databasteknik >  >> RDS >> Mysql

Använda alias för en fråga för att ansluta till en annan tabell MySQL

Du kan gå med i kickscooter_control_units på din subquery användningen exists sökord snarare än IN.

select *
from rents r
where 
  exists 
  (select 1
     from support_works sw
     join kickscooters k on k.serial_number = sw.serial_number
     join kickscooter_control_units kcu on  kcu.kickscooter_id =  k.id and kcu.particle_product_id in (9358, 9383)   
     where
       sw.work_type = 'deploy' and
       (sw.updated_at between '2019-11-01 02:00:00' and '2019-11-01 10:00:00'))  

Baserat på ditt scenario verkar du filtrera ID . exists endast tillämpligt om du vill kontrollera om viss subquery innehåller värden.

 select *
    from rents r
    where 
      r.kickscooter_id in 
      (select k.id
         from support_works sw
         join kickscooters k on k.serial_number = sw.serial_number
         join kickscooter_control_units kcu on  kcu.kickscooter_id =  k.id and kcu.particle_product_id in (9358, 9383)   
         where
           sw.work_type = 'deploy' and
           (sw.updated_at between '2019-11-01 02:00:00' and '2019-11-01 10:00:00'))  



  1. ALTER TABLE-tabell AUTO_INCREMENT =$x

  2. Lägg till en kolumn i befintlig tabell och numrera dem unikt på MS SQL Server

  3. MySQLdb python infoga rad eller öka antalet kolumner om det finns

  4. Cacha med PHP för att ta bort stressen från MySQL