Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

INSERT INTO Table from multiple tables

Tags:

sql

mysql

Hey so I have a Junction table linking two unrelated tables. Both the tables have ID's. I need to select the ID from each table using WHERE with different values, for example this is how I see it:

INSERT INTO c (aID, bID)
VALUES (SELECT a.ID WHERE a.Name="Me", SELECT b.ID WHERE b.Class="Math");

All the examples I've seen use a join statement but the two tables have a common value, in this case they don't.


2 Answers

Try this query:

     INSERT INTO C (aID, bID) 
     SELECT A.ID, B.ID 
     FROM A, B 
     WHERE A.Name='Me'
     AND B.Class='Math';
like image 123
Yogendra Singh Avatar answered Sep 07 '25 16:09

Yogendra Singh


Another way can be

INSERT INTO c (aID, bID)
SELECT 
   (SELECT A.id FROM TableA A WHERE A.names = 'sometext'), 
   B.id FROM TableB B 
WHERE 
   B.x_name ='othertext';
like image 30
Rohit Dubey Avatar answered Sep 07 '25 17:09

Rohit Dubey