Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Visual Basic: Общие вопросы > Вывод результатов запроса


Автор: Grimm 07.01.07, 07:58
Дано:

Существует БД с некоторыми таблицами

1. Firm - таблица фирм
FIndex - ключ
FName - название
........ другие поля, для ответа на вопрос не важны

2. Cat2 - таблица подкатегорий
C2Index - ключ
C2Name - наименование

3. Link - таблица связей
LIndex - ключ
FIndex - ссылка на Firm
C2Index - ссылка на Cat2

Связей в таблице Link для каждой записи из Firm может быть много. Причем для всех это число неодинаково.

Требуется вывести список фирм в таблице, к примеру с двумя столбцами один Firm.Fname другой Cat2.C2Name. То есть в первом стобце выводим название фирмы, а во втором через запятую или в столбик все соответствующие подкатегории.

Простым перебором Firm и постоянными запросами к Link с INNER JOIN C2Name все выводится.
Но 450 фирм с 1-5 связанными подкатегориями в MSFlexGrid выводятся в течение 3-4 секунд.
Однако подкатегории во втором столбике Grid могу только через запятую вывести.

Вопрос 1. Время нормальное или нет?
Вопрос 2. FlexGrid не понимает перехода на след строку в ячейке?
Вопрос 3. Как тогда можно реализовать в некоей таблице вывод в столбик.
Вопрос 4. Можно реализовать все одним запросом, без перебора?



Вот наглядно то имею для 450 записей за 3-4 секунды в MSFlexGrid
И то что хочу получить, желательно одним запросом

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)