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

MySQL INSERT INTO SELECT JOIN

    INSERT INTO `table_g`(`id_1`, `id_2`, `id_3`)
    SELECT t1.`id`, t2.`id`, t3.`id`
    FROM `table_name` tn
      RIGHT JOIN `table_old` t1 ON tn.`name` = t1.`name_1` AND t1.`role` = 'g'
      RIGHT JOIN `table_old` t2 ON tn.`name` = t2.`name_2` AND t2.`role` = 'g'
      RIGHT JOIN `table_old` t3 ON tn.`name` = t3.`name_3` AND t3.`role` = 'g'
    

    一見すると、選択には多くのあいまいさがあります。少なくとも、上記のコードを使用して何が起こるかを試してみてください。




    1. カンマ区切りの結果セットを使用したSQLServerサブクエリ

    2. ロールアップをグループで並べ替える

    3. SQL JOINの順序はパフォーマンスに影響しますか?

    4. LIKE(SQL)を使用したテーブルの結合