У меня есть сценарий Mysql
table1
--------------
id `7` `8`
--------------
1 10 20
2 20 30
table 2
---------------
id code rel
---------------
3 7 1
4 8 2
Я использую следующее выражение для получения значений
SELECT t2.id, t2.code,
CASE t2.code WHEN 7 THEN (SELECT `7` FROM table1 t1 where t1.id = t2.rel)
CASE t2.code WHEN 8 THEN (SELECT `8` FROM table1 t1 where t1.id = t2.rel)
END as val
FROM table2 t2
но это не красиво и не функционально, потому что мне нужно, чтобы эти значения были суммированы, умножены и т. Д., А столбцов много.
Есть ли способ объединить эти таблицы и получить table1. 7
значение для значений t2.rel, t2.code?
Нечто похожее на
SELECT t2.id, t2.code, eval(t1.(t2.code)) as val
FROM table2 t2
JOIN table1 t1 on t2.rel = t1.id
Большое спасибо!