powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / join проблема
4 сообщений из 4, страница 1 из 1
join проблема
    #35945666
bagos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
помогите составить правильно запрос к таблицам, замучился никак не получается.
stu_nagruzka содержит ссылки на id других таблиц(stu_formi_obucheniya, stu_specializations, stu_discipline), в которых поля id,name при использовании join получаю соответствующие значение полей name по id. Но теперь появилась еще таблица (new_table - поля id,nagruzka_id) которая содержит ссылку на id записи в stu_nagruzka, как мне в этом случае получить

select
stu_nagruzka.FORM_OBUCH_ID,
stu_nagruzka.SPEC_ID,
stu_nagruzka.DISC_ID,
stu_nagruzka.semestr, stu_nagruzka.hours, stu_nagruzka.id,
stu_formi_obucheniya.name as stu_formi_obucheniya,
stu_specializations.name as stu_specializations,
stu_discipline.name as stu_discipline
from
stu_nagruzka n
left join stu_specializations s on n.spec_id = s.id
left join stu_discipline d on n.disc_id = d.id
left join stu_formi_obucheniya f on n.form_obuch_id = f.id
...
Рейтинг: 0 / 0
join проблема
    #35945676
bagos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверно не совсем понятно написал, попробую иначе:
таблицы - table_a, table_b, table_c имеют поля id (int),name(varchar)
таблица table_nagruzka имеет поля id,table_a_id, table_b_id, table_c_id
с помощью join получал список из table_a_id = name.
Но есть еще одна таблица table_all - имеет поля id, table_nagruzka_id, position, value
Нужно составить правильный селект чтобы вывелись в грид table_a.name, table_b.name,table_c.name,position, value
...
Рейтинг: 0 / 0
join проблема
    #35946316
Фотография Alexandr Nikolaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если всё правильно понял, то
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
select
  table_a."name" as table_a_name,
  table_b."name" as table_b_name,
  table_c."name" as table_c_name,
  table_all."position" as table_all_position,
  table_all."value" as table_all_value
from
  table_nagruzka
left outer join
  table_a
on
  table_a.id = table_nagruzka.table_a_id
left outer join
  table_b
on
  table_b.id = table_nagruzka.table_b_id
left outer join
  table_c
on
  table_c.id = table_nagruzka.table_c_id
left outer join
  table_all
on
  table_all.table_nagruzka_id = table_nagruzka.table_nagruzka_id
C уважением,
AlexandrN©
...
Рейтинг: 0 / 0
join проблема
    #35968460
bagos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо, это работает, но дело в том что в таблице table_all, поле position_id содержит ссылку на id таблицы table_position в ней поля id,name так вот мне нужно чтобы в результате была не ссылка на id, а name соответствующего поля id
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / join проблема
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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