Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Как добавить столбцы? (Den) 20/02/2002 - 13:26:09
      Re: Как добавить столбцы? (Василий) 20/02/2002 - 14:28:42
      Re: Как добавить столбцы? (Den) 20/02/2002 - 16:26:37
      Re: Как добавить столбцы? (Василий) 20/02/2002 - 19:45:12
      Re: Всё Ок, большое спасибо !!! (Den) 21/02/2002 - 10:34:57

> Original message text:
> From: Den - 20/02/2002 - 13:26:09
> Subject:Как добавить столбцы?
> -----------------
> Привет All!
> как добавить (не обединить) столбцы из одной таблици к другой
> ~~
> select table1.field, table2.field, table3.field
> from table1, table2, table3
> where table1.id_t2 = table2.id
> and table1.id_t3 = table3.id
> ~~
> неподходит так как игнорирует записи из table1 где поля id_t2 и id_t3 пустые
>


From: Василий - 20/02/2002 - 19:45:12
Subject:Как добавить столбцы?
-----------------
может, я чего-то не понял. что, кстати, значит "добавить (не объединить)" ?

но left join делает то же самое, что и inner join, за тем искл., что для тех записей, для которых он не находит соответсвующих в связанной таблице он выводит нулы. если в таблице 1 для какой-то записи не будет найдено связанных, то эта запись из таблицы 1 породит ровно одну запись в финальной выборке. кто тогда лишний?
Вот Вы пишете, что inner join не подходит потому, что упускает записи, в которых id_t2 и id_t3 пустые. но left join как раз и добавляет такие записи к результатам inner join в единственном экземпляре. Так кто лишний-то?

create table t6(id int, ch1 int, ch2 int);
create table t7(ch1 int);
create table t8(ch2 int);

insert into t7(ch1) values (1);
insert into t7(ch1) values (2);
insert into t8(ch2) values (1);
insert into t6(id,ch1,ch2) values (1,1,1);
insert into t6(id,ch1,ch2) values (1,2,2);
insert into t6(id,ch1,ch2) values (3,null,null);

select t6.id, t7.ch1,t8.ch2
from t6 left join t7 on t6.ch1 = t7.ch1
left join t8 on t8.ch2 = t6.ch2;

+------+------+------+
| id | ch1 | ch2 |
+------+------+------+
| 1 | 1 | 1 |
| 1 | 2 | NULL |
| 3 | NULL | NULL |
+------+------+------+

и какие записи здесь лишние?





[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
1941



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |