
Question:
I have two MySQL tables with a similar structure. i.e.
Table_A - Col1, Col2, Col3, Col4, Col5 Table_B - Col1, Col2, Col3
I need to run a query that says something like:
SELECT * FROM Table_A WHERE (Table_A.Col1 DOES NOT EXISTS in Table_B.Col3 AND Table_B.Col2 = 'A') AND Table_A.Col5 = 2 etc...
So basically I need to select everything from A that isn't in B where B has extra conditions.
Hopefully the following example will help:
Table_A example rows
1, 5, 'Orange', 'Elephant', 1 2, 3, 'Red', 'Horse', 2 3, 4, 'Blue', 'Rhino', 2 4, 4, 'Pink', 'Cat', 2 5, 2, 'Purple', 'Dog', 2
Table_B example rows
1, 'A', 3 2, 'A', 2 3, 'B', 2 4, 'C', 3
The returned data I need is - I'm querying for all rows from Table_A that (aren't in Table_B AND Table_B.Col2 = 'A') AND Table_A.col5 = 2
4, 4, 'Pink', 'Cat', 2 5, 2, 'Purple', 'Dog', 2
Any ideas? Thanks!
Solution:1
SELECT A.* FROM table_A AS A LEFT JOIN Table_B AS B ON A.Col1 = B.Col3 WHERE B.Col3 IS NULL AND B.Col2 = 'A' AND ...
Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
EmoticonEmoticon