Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 10.02.2013
Сообщений: 24

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

26.02.2013, 21:59. Показов 887. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте)
Мне нужно реализовать сортировку (например, по фамилии в алфавитном порядке), если таблица одна, то всё легко делается через запросы в ADOQuery. Но у меня есть 2 таблицы, причём не связанные между собой, но имеют одинаковое поле [код]. Вопрос следующий: нужно отсортировать таблицу по фамилии, но при этом во второй таблице тоже должна производиться сортировка соответственно полю [код]. Как можно это сделать?
Например, номер записи [Петров] = 3, [код]=12, при сортировке запись перемещается на первую позицию и во второй таблице запись с [код]=12 также должна переместиться на 1-ю позицию.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.02.2013, 21:59
Ответы с готовыми решениями:

Работа с несколькими таблицами
Не могу розобратса как могжно работать с несколькома связаными таблицами, я только розобрался как работать с одной, а вот с нескольками и...

Работа с несколькими таблицами
Предисловие: Имею 4 таблицы, все они одинаковы и имеют равное количество столбцов и строк. Вопрос: При заносе данных в первый столбец...

Отображение полей в DBGrid с несколькими связанными таблицами
Здравствуйте) Мой вопрос таков: я создала в Access базу данных, в которой есть 2 таблицы, связанные один-к-одному, далее в Билдере мне...

7
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
26.02.2013, 22:44
Нутак сделай 2 запроса на одну и на другую таблицу
0
1 / 1 / 0
Регистрация: 10.02.2013
Сообщений: 24
27.02.2013, 00:11  [ТС]
А можна конкретнее, какие именно запросы?
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
27.02.2013, 00:31
Lovan, здравствуйте!

Честно говоря, мне на ум решения не приходит. Хотя кое-что приходит, но это явно не решение

Проходимся циклом по первой таблице:
Цитата Сообщение от Lovan Посмотреть сообщение
[Петров] = 3, [код]=12
В цикле находим сравнения между текущей записью и записью из второй таблицы (вложенный цикл по второй записям второй таблицы). Если находим совпадение, то заносим данную запись (из второй таблицы) в какой-ниюудь StringList, используя разделители.

По окончанию общего цикла насильственно производить запись в DBGrid из StringList, учитывая при этом тип TField конкретного столбца DBGrid.

В общем, при таком подходе проще будет использовать StringGrid


P.S. Хотелось бы выслушать нормальное решение.
0
1 / 1 / 0
Регистрация: 10.02.2013
Сообщений: 24
27.02.2013, 00:45  [ТС]
Вы знаете, у меня был точно такой же вариант, но, наверное, он далёк от идеала. Хорошо, упростим задачу, допустим таблицы связаны, как тогда осуществить сортировку и поиск, если таблиц >=2.
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
27.02.2013, 03:39
Lovan,

Цитата Сообщение от Lovan Посмотреть сообщение
нужно отсортировать таблицу по фамилии, но при этом во второй таблице тоже должна производиться сортировка соответственно полю [код]. Как можно это сделать?
Цитата Сообщение от Lovan Посмотреть сообщение
допустим таблицы связаны

ТабИмя
Код Имя
1 Сидор
2 Иван
3 Петр

ТабФамилия
КодИмя Фамилия
1 Сидоров
2 Иванов
3 Петров

SQL
1
SELECT ТабФамилия.* FROM ТабИмя, ТабФамилия WHERE ТабИмя.Код = ТабФамилия.КодИмя ORDER BY ТабИмя.Имя ASC
Result:

ТабФамилия
КодИмя Фамилия
2 Иванов
3 Петров
1 Сидоров
0
1 / 1 / 0
Регистрация: 10.02.2013
Сообщений: 24
27.02.2013, 13:46  [ТС]
Спасибо большое))), это именно то, что нужно.
1
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
27.02.2013, 13:50
Lovan, всегда пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.02.2013, 13:50
Помогаю со студенческими работами здесь

Как работать с несколькими связанными между собой таблицами?
Доброго время суток, форумчяни! Я вот пытаюсь разобраться как можно работать с несколькими таблицами которые между собой связаны (база...

Работа с несколькими таблицами
Здравствуйте! Помогите мне, пожалуйста! У меня на форме такие компоненты: ADOConnection1, ADOQuery1, DataSource1 и др. И три таблицы,...

Работа с несколькими таблицами
ДД! Есть много БД на Парадоксе 7 и на форме много ТБГридов. Как сделать так чтобы при переходе с одного табшита на другой в дбгриде для...

Работа с несколькими таблицами БД
Уважаемые, подскажите. Требования: - Работа через DBGrid - Редактирование данных в таблицах Имеется две таблицы, в первой...

работа с несколькими таблицами
Добрый день, как можно сделать так, чтобы обрашаться к таблице по имени пример: есть таблици string parametr1 = new string; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита табличной части. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru