sql >> データベース >  >> RDS >> Mysql

クエリのエイリアスを使用して別のテーブルMySQLと結合する

    kickscooter_control_unitsに参加できます subqueryで 使用exists 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'))  
    

    IDをフィルタリングしているシナリオに基づいているようです 。 exists 特定のsubqueryかどうかを確認する場合にのみ適用されます 値が含まれています。

     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. MySQLクエリでアクセント付き文字を正規化する

    2. null値を最後のnull以外の量で埋める-OracleSQL

    3. php / mysqlの世界では、ストアドプロシージャは使用できませんか?

    4. javajdbcとプリペアドステートメントを使用したCREATEDATABASEクエリは、構文エラーを返します