powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Совсем запутался с джоинами
3 сообщений из 3, страница 1 из 1
Совсем запутался с джоинами
    #32079034
KostikG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот, совсем не пойму что творится. Короче, есть 3 таблицы, одна главная (main):

------
main:
1
2
3
4
5
------
one
1
2
3
------
two
1
4
5

Задача в том, что бы показывались все 5 ROWs из главной таблицы, а к ним были присоединены 2 другие таблицы соответсвенно.

Просто с FROM main, one, two со всеми тремя таблицами конечно не идёт (с 2мя бы шло), т.к. все JOINs разные (ок, все кроме номера "1").

Казалось бы что проблема должна решится с LEFT JOIN, но ентот гад тогда покажет те строчки которые во всех трёх таблицах имеются дважды (тут: номер "1").
SELECT * FROM main
LEFT JOIN one ON one.id=main.id
LEFT JOIN two ON two.id=main.id

И вот даже DISCTINCT тут не помогает... :-/

Что делать? :-(

Надеюсь объяснил более-менее понятно, заранее благодарен за ответы
...
Рейтинг: 0 / 0
Совсем запутался с джоинами
    #32079043
Prosto tak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT main.id, one.id, two.id
FROM (main LEFT JOIN one ON main.id = one.id) LEFT JOIN two ON main.id = two.id;

Результат

main.id one.id two.id
1 1 1
2 2
3 3
4 4
5 5
...
Рейтинг: 0 / 0
Совсем запутался с джоинами
    #32079044
Prosto tak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри, результат на странице форума отобразился неправильно (заранее не проверила как будет смотреться), но проверьте- все работает правильно
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Совсем запутался с джоинами
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]