- Автор темы
- #1
Требуется в зависимости от значения записи в таблице подключать разные таблицы.
Т.е. если table1.mattype = 'zav' сделать
JOIN `table2`
если table1.mattype = 'art' сделать
JOIN `table3`
Этот запрос по идее должен делать такое:
но возникает ошибка:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CASE t1.mattype WHEN 'zav' THEN `table2` WHEN 'art' THEN `table3`' at line 3
Т.е. если table1.mattype = 'zav' сделать
JOIN `table2`
если table1.mattype = 'art' сделать
JOIN `table3`
Этот запрос по идее должен делать такое:
PHP:
SELECT `t1`.*, `t2`.* FROM `table1` AS `t1`
LEFT JOIN (CASE t1.mattype
WHEN 'zav' THEN `table2`
WHEN 'art' THEN `table3`
ELSE NULL
END ) AS `t2` ON t1.matid = t2.id WHERE (t1.mattype <> '') LIMIT 5
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CASE t1.mattype WHEN 'zav' THEN `table2` WHEN 'art' THEN `table3`' at line 3