Захватить из таблицы значений
Это мой набор данных таблицы:
col1 col2 col3 col4
2 7 5 3
11 18 31 7
Это идентификаторы, и их нужно использовать в качестве идентификатора, чтобы получить имя, связанное с ними. если я сделаю:
select table1.name from table1,table2 where table2.id = 1
Дает мне имя, связанное с идентификатором 1. Я хочу автоматически получить имена, основанные на идентификаторах в моей таблице в этой форме.
name1 name2 name3 name4
name_id2 name_id7 name_id5 name_id3
Есть способ получить это?
--------- КАК ЗАПРОСИТЬ ПРИМЕР
Таблица 1:
col2 col3 col4
2 3 4
2 5 6
Таблица 2:
nome id
all 1
dis1 2
dis3 3
dis4 4
dis5 5
dis6 6
My_result:
col2 col3 col4
dis2 dis3 dis4
dis2 dis5 dis6
2 ответа
Решение
Попробуйте этот код:
SELECT T2_1.nome as col2, T2_2.nome as col3, T2_3.nome as col4
FROM Table1
LEFT JOIN Table2 as T2_1 on T2_1.ID=Table1.col2
LEFT JOIN Table2 as T2_2 on T2_2.ID=Table1.col3
LEFT JOIN Table2 as T2_3 on T2_3.ID=Table1.col4
Как насчет этого?
SELECT t_name1.nome, t_name2.nome, t_name3.nome
FROM table1
LEFT JOIN table2 t_name1 ON table1.col2 = t_name1.id
LEFT JOIN table2 t_name2 ON table1.col3 = t_name2.id
LEFT JOIN table2 t_name3 ON table1.col4 = t_name3.id