![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 30.09.2008
Сообщений: 483
|
![]()
Здравствуйте!
В БД есть таблица студентов, две таблицы предметов (основные и факультативы) и две таблицы успеваемости соответственно. я написал запрос, который на основе успеваемости и коэффициентов значимости основных предметов(указаны в таблице предметов) строит некий рейтинг студентов. для каждого студента складывает произведения его оценки на значимость предмета, в результате получается число. полученный в запросе список студентов сортируется по значению этого числа. ![]() фактически, реализована только верхняя ветвь схемы, которая изображена на картинке. Столбец выборки отвечающий за рейтинг: Rating: (Sum([Progress1].[Mark]*[Subject].[Rate])) Мне нужно, чтобы к основному рейтингу каждого студента прибавлялся его рейтинг по факультативам, если он есть. Но точно не знаю как это сделать. при попытке записать Rating как Rating: ((Sum([Progress1].[Mark]*[Subject].[Rate]))+(Sum([Progress2].[Mark]*[Facultative].[Rate]))), то есть сумма основного + факультативного рейтинга, в выборку попадают только те студенты, которые записаны хотя бы на один факультатив. а те, что проходят только основные предметы и не имеют ни одного факультатива, отсеиваются. Надеюсь на помощь Это запрос только для рейтинга основных предметов: Код:
Код:
Последний раз редактировалось Revival001; 23.05.2013 в 13:44. |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 12.08.2010
Сообщений: 1,079
|
![]()
видимо применяя left join
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание |
![]() |
![]() |
![]() |
#3 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
надо удалить таблицы Progress2 и Facultative, от них пользы нет, только мешают
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
![]()
Здравствуйте Revival001.
Задачу "..к основному рейтингу . прибавлялся . рейтинг по факультативам.." Вашей конструкцией выполнить не удастся. Рассмотрите на схеме связь между Progress1 и Progress2, (для наглядности прикройте таблицу Student) отношение много-много не позволит решить задачу. Можно конечно изменить связи (например предположив, что студент может посещать только факультативы связанные с его основными предметами). Но предложение eval "..удалить таблицы Progress2 и Facultative.." мне кажется заслуживает внимания, ведь структура их одинакова. Создайте в таблице Progress1 поле для маркировки статуса факультатив и смело удаляйте таблицу Progress2. Ваша задача будет решаться без подобных вопросов. Успехов Вам. Евгений. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") | funnyy | Помощь студентам | 3 | 17.10.2012 17:40 |
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. | воваава | Помощь студентам | 3 | 01.12.2011 12:50 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |
запрос (выйти(завершить программу)) "Y";"N". | SKS | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 15.01.2009 16:32 |