SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 12.01.2014 02:02:12

look
Участник
Зарегистрирован: 12.01.2014
Сообщений: 4

Как связать два поля в одной таблице с одним полем в другой

Помогите новичку, пожалуйста.
Есть таблица1:

| id | n1 | n2|
|_1 |_1  |_3 |
|_2 |_2  |_1 |
|_3 |_1  |_2 |

И таблица2:

| id | n3 |
|_1 |_8  |
|_2 |_6  |
|_3 |_7  |

Надо вывести на основе первой таблицы:

| id | n1 | n2|
|_1 |_8  |_7 |
|_2 |_6  |_8 |
|_3 |_8  |_6 |

Т.е. связать как-то их по двум полям

Неактивен

 

#2 12.01.2014 02:19:12

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Как связать два поля в одной таблице с одним полем в другой

select t1.id, t2.n3 as n1, t3.n3 as n2 from `таблица1` t1 join `таблица2` t2 on t1.n1=t2.id join `таблица2` t3 on t1.n2=t3.id;

Неактивен

 

#3 12.01.2014 12:34:44

look
Участник
Зарегистрирован: 12.01.2014
Сообщений: 4

Re: Как связать два поля в одной таблице с одним полем в другой

Спасибо! Разобрался с вашей помощью

Неактивен

 

#4 12.01.2014 20:30:32

look
Участник
Зарегистрирован: 12.01.2014
Сообщений: 4

Re: Как связать два поля в одной таблице с одним полем в другой

Столкнулся с проблемой: если одно из значений в таблица1 будет равно 0, то в таблица3 исчезает на этом месте строка. Что делать, подскажите пожалуйста!

Неактивен

 

#5 12.01.2014 20:44:12

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Как связать два поля в одной таблице с одним полем в другой

join заменить на left join

Неактивен

 

#6 13.01.2014 00:45:37

look
Участник
Зарегистрирован: 12.01.2014
Сообщений: 4

Re: Как связать два поля в одной таблице с одним полем в другой

Спасибо - заработало!!!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson