Форум: "Базы";
Текущий архив: 2002.12.05;
Скачать: [xml.tar.bz2];
ВнизСоздание SQL запроса Найти похожие ветки
← →
Лесникова Марина (2002-11-16 10:33) [0]Мною разрабатывается программа "Ведение бух.учета по оплате за обучение студентами".
Как составить SQL - запрос (или TQuery) для того, чтобы в основном Gride отображались записи,
соответствующие группе студентов, выбранной во вспомогательном Gride.
Если кто - нибудь составляет подобную программу, напишите пожалуйста мне на E - mail: lesnikova@mail.kz. Марина.
← →
Котелок (2002-11-16 11:19) [1]Вообше-то вопрос вызывает ещё больше вопросов, чем ответов.
Если я правильно понял, то есть две таблицы одна студенты, вторая оплаты. И связанны они по какомулибо полю (код студента)?
Тогда Sql запрос будет, в обшем, выглядеть так:
select opl.* from <имя таблицы оплат> opl, <имя таблицы студентов> stud where opl.<поле ID студента> = stud.<поле ID студента>
← →
Alex-kosmonavt (2002-11-16 11:43) [2]Вообще-то в некоторых случаях можно и проще
самом деле существует механизм связывания таблиц
← →
Котелок (2002-11-16 12:13) [3]
> Alex-kosmonavt (16.11.02 11:43)
> Вообще-то в некоторых случаях можно и проще
> самом деле существует механизм связывания таблиц
Просто спрашивали, как через TQuery, а только такой путь вижу. Мастер-Детаил только для TTable хорошо.
← →
Hun (2002-11-17 00:06) [4]Можно либо действительно использовать Masterdetail, либо (что на мой взгляд лучше) пользоваться событиями AfterScroll у Query или OnDataChange у DataSource. А писать надо нечто в таком духе
query2.Close;
query2.ParamByName("StudentGroupId").AsInteger:=
query1.FieldByName("StudentGroupId").AsInteger
query2.Open;
← →
Fantasist (2002-11-18 00:43) [5]
> Просто спрашивали, как через TQuery, а только такой путь
> вижу
А еще есть такая вещь как фильтрация. Tquery.Filter, Tquery.Filtered, Tquery.FilterOptions.
← →
Котелок (2002-11-18 05:56) [6]
> А еще есть такая вещь как фильтрация. Tquery.Filter, Tquery.Filtered,
> Tquery.FilterOptions.
Ну да есть такая вешь, но если записей становися достаточно много, то фильтрация нацинает показывать свои "плюсы" в скорости.
← →
Fantasist (2002-11-18 07:45) [7]
> Ну да есть такая вешь, но если записей становися достаточно
> много, то фильтрация нацинает показывать свои "плюсы" в
> скорости.
Конечно. Зависит от того, насколько часто надо обновлять данные и насколько велики объемы. А так, подгрузить данные один раз и потом их фильтровать значительно быстрее. Условий задачи мы не знаем, а упомянуть возможности можем.
← →
Victor_Cr (2002-11-18 10:51) [8]Создаешь два запроса TQuery, в первом откуда выбираеться группа студентов просто делаешь запрос на выбор всех групп.
А во второй запросе передаешь как параметр выбраную группу, например:
Query1.SQL = "select groupID,groupNM from groups"
Query2.SQL = "select * from infogroup where <КЛЮЧЕВОЕ ПОЛЕ> = :groupID"
где groups - справочник групп, infogroup - справочная информация по каждой группе.
после этого связываешь Query2 с DataSource Query1. И если я правильно понял задачу, будет работать.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.12.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c