Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2010, 11:46   #1
AK BULLETS
Пользователь
 
Регистрация: 18.03.2010
Сообщений: 88
Вопрос Какой алгоритм?

Добрый день!
Прошу помочь с алгоритмом.
В базе данных имеется 3 таблицы.
1 - основной справочник объектов, содержит 2 записи:
Малый дом
Котедж

2 - таблица частей постройки с ключом к 1-ой таблице (у каждой записи есть код объекта), содержит 5 записей:
фундамент
крыша
- с ключом к 1-му объекту (малый дом)
пол
потолок
стены
- с ключом ко 2-му объекты (Котедж)

3 - таблица материалов с ключом к 1-ой таблице (у каждого есть код объекта), содержит 5 записей:
доска
метал
пластик
- с ключом к 1-му объекту (малый дом)
бетон
песок
- с ключом ко 2-му объекты (Котедж).

Простой запрос, по ключу из первой таблице собираю всё (из 3 таблиц) в одну таблицу и результат вывожу в excel:

Столбец 1............Столбец 2............Столбец 3
=================================== ==
Малый дом...........фундамент...........д оска
Малый дом...........фундамент...........м еталл
Малый дом...........фундамент...........п ластик
Малый дом...........крыша................ .доска
Малый дом...........крыша................ .металл
Малый дом...........крыша................ .пластик
Котедж................пол.......... ...........бетон
Котедж................пол.......... ...........песок
Котедж...............потолок....... .........бетон
Котедж...............потолок....... .........песок
Котедж...............стены......... ..........бетон
Котедж...............стены......... ..........песок

Информация, содержащаяся во 2-й и 3-й таблице никак не связывается, основа для всех записей - объекты первой таблице и я хочу, чтобы в excel таблице данные отображались след. образом:

Столбец 1...........Столбец 2............Столбец 3
=================================== =
Малый дом..........фундамент............д оска
Малый дом..........крыша................. .металл
Малый дом..........(пусто)............... ..пластик
Котедж...............пол........... ...........бетон
Котедж...............потолок....... .........песок
Котедж...............стены......... ..........(пусто)

Как это можно сделать?
AK BULLETS вне форума Ответить с цитированием
Старый 17.05.2010, 16:32   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

да просто Вы странного хотите... если столбцы 2 и 3 никак не связаны, зачем их собирать в одну таблицу (ведь логически ожидается, что данные в одной строке относятся к чему-то одному..

впрочем, "Вы хочите песен? Их есть у меня... "

Код:
SELECT TABLE1.obj_id, TABLE1.NameObj, 
    COALESCE(Tablica2.PartBuild,'<пусто>')  as  PartBuild,
    COALESCE(Tablica3.Material,'<пусто>')  as  Material
FROM  TABLE1  LEFT OUTER JOIN  Tablica2 
                          ON Tablica1.obj_id = Tablica2.obj_id 
              LEFT OUTER JOIN  Tablica3 
                          ON Tablica1.obj_id = Tablica3.obj_id
Serge_Bliznykov вне форума Ответить с цитированием
Старый 17.05.2010, 18:48   #3
AK BULLETS
Пользователь
 
Регистрация: 18.03.2010
Сообщений: 88
По умолчанию

Если можно, запрос по базу ACCESS
AK BULLETS вне форума Ответить с цитированием
Старый 17.05.2010, 21:46   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

AK BULLETS, проношу свои извинения, но я не могу решить данную задачу (она оказалась даже намного "страньше", чем я сперва себе представлял!)

посмотрите результаты запросов
Table1_Table2
Table1_Table3
и попытайтесь представить, как это может получится в результирующем файле ;(

p.s. задачу можно решить, но "пошагово" - для каждой строчки из таблицы 1 - ОТДЕЛЬНО.
Вложения
Тип файла: rar db_test.rar (8.9 Кб, 9 просмотров)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.05.2010, 09:18   #5
AK BULLETS
Пользователь
 
Регистрация: 18.03.2010
Сообщений: 88
По умолчанию

вот и я кроме как дальнейшей обработки строк в excel таблице ничего не придумал
AK BULLETS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Волновой алгоритм (алгоритм Ли) MrRockchip Общие вопросы C/C++ 4 10.05.2010 13:26
Какой алгоритм используется для ПОИСКА РЕШЕНИЯ в Excel JulOl Помощь студентам 2 31.03.2010 11:59
Какой алгоритм Sip авторизации Aliens_wolfs Работа с сетью в Delphi 0 25.01.2010 14:00
какой же оператор..( ayPinki Общие вопросы C/C++ 2 13.12.2009 10:05
Какой компонент VenMaster Общие вопросы Delphi 4 07.06.2008 10:38