SELECT var1,var2,var3,table_name
FROM table1 LEFT JOIN table_name on var3=table_name.id
Meaning I want to dynamically left join table, depending on value of table_name
from table1
, since var3
is taken from there.
But the above query results in
table table_name does not exist
My mistake of mysql limitation?
The only you can do that is by using UNION .
Introduction to MySQL LEFT JOIN clauseThe LEFT JOIN allows you to query data from two or more tables. Similar to the INNER JOIN clause, the LEFT JOIN is an optional clause of the SELECT statement, which appears immediately after the FROM clause.
Table names, as well as column names, can't be dynamic in an SQL query. So you have to apply your logic programmatically, using 2 queries, or with a stored procedure, see an example here: http://forums.mysql.com/read.php?98,126506,126598#msg-126598
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With