Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
Добрый день!
Прошу помочь.

id_time: (SELECT id_time FROM z_VSE_zanyatiya WHERE priority>2)

Задача: в строке перекресного запроса вывести только id_time с максимальным приоритетом.
Почему-то закрывающую скобку сжирает access и выдает ошибку.

ВОПРОС: В чем синтаксическая ошибка? Как Написать правильно?

К сообщению приложен файл. Размер - 18Kb
27 янв 19, 19:10    [21795297]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
т.е. id_time: (SELECT id_time FROM z_VSE_zanyatiya WHERE priority>2)
я ввожу в

К сообщению приложен файл. Размер - 50Kb
27 янв 19, 19:56    [21795307]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
Вообще, вопрос в том, что в перекресном запросе дубликаты есть.
Я хочу из убрать путем:
когда есть два одинаковых значения, то оставлять тот, у кого приоритет выше

К сообщению приложен файл. Размер - 79Kb
27 янв 19, 19:58    [21795310]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5510
Покажите таблицу
В запросе,как я понял,должны выводиться записи с max priority-правильно?
27 янв 19, 20:07    [21795320]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
sdku,
вот таблица.
Не смотря на то что ID_lesson разные, должно выводиться только вариант с максимальным приоритетом.
понятно, что ID_lesson если убрать, то все легко, но оно мне нужно, чтобы открывать карточку занятия

К сообщению приложен файл. Размер - 55Kb
27 янв 19, 20:13    [21795324]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5510
quickstar,
глядя на таблицу сильно засомневался в правильности структуры(схемы данных)БД-покажите базу и вкратце задачи ей решаемые
27 янв 19, 21:00    [21795349]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
sdku, есть занятие педагога, в конкретном кабинете и конкретное время.
занятие каждую неделю повторяются в тоже время и том же кабинете.
но в случает отмены занятия только на этой неделе, нужно в отмененный день назначит новое занятие.

вот я и подумал решить это через приоритеты, так как удалять вообще занятие нельзя из расписания.
т.е. у отмененного занятия приоритет понижаю
а у того, что будет в этот время в этом кабинете, приорите повышаю.
соответственно в расписании хочу выводить только с макс приоритетом занятия

К сообщению приложен файл. Размер - 42Kb
27 янв 19, 21:13    [21795354]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5510
quickstar,
если занятия проводятся с уч.группами,то в tbl_lesson для каждого занятия придется создавать кучу записей для каждого присутствующего на занятии(tbl_client). Почему бы Вам не сформировать уч группы и оперировать ими. Как я понял цель-создание расписания,а посещаемость это уже другая история
27 янв 19, 21:43    [21795370]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
sdku, 1 занятие = 1 ученик
а как бы Вы решили задачу выводить расписание, в т.ч. пустые ячейки, в т.ч. показывая только тех кто точно придет?
27 янв 19, 22:10    [21795377]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 423
quickstar, ошибку будет выдавать всегда если значений больше 1.
с приоритетами решение неудачное.
если это не учебная задача, рекомендовал бы сформировать структуру посложнее, все отмены скидывать в отдельную таблицу с датой до которой эта отмена действует и формировать расписание на каждую неделю (месяц) на основании шаблонного расписания (по умолчанию) с учетом всех этих отмен; приоритеты здесь могут быть только в случае дележки аудитории и на основании важности курса.
27 янв 19, 22:13    [21795378]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
alecko,не понимаю.
если на этой неделе отменилось занятия, то на эту неделю занятие скидывать в др таблицу?


посоветуйте как id_time: (SELECT id_time FROM z_VSE_zanyatiya WHERE priority>2) сделать так, чтобы работала?
я про то, что в каждой строчке выводилось значение времени только по той записи. у которой приоритет = 3
27 янв 19, 22:22    [21795382]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
quickstar
Member

Откуда:
Сообщений: 158
Мне бы решить как недопустить в сводных запросах появления двух дублирующих значений, при этом оставить такие параметры как ID класса, id преподавателя и пр, т.е. то, что дублирует сейчас

К сообщению приложен файл. Размер - 88Kb
27 янв 19, 22:27    [21795384]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 423
quickstar
alecko,не понимаю.
если на этой неделе отменилось занятия, то на эту неделю занятие скидывать в др таблицу?
посоветуйте как id_time: (SELECT id_time FROM z_VSE_zanyatiya WHERE priority>2) сделать так, чтобы работала?
я про то, что в каждой строчке выводилось значение времени только по той записи. у которой приоритет = 3

для того чтобы смотреть встроенный запрос - нужен полный текст запроса
в таблицу думаю нужно скидывать событие отмены
ID_Check IDLesson From To Sobyt WOT
1301.01.201920.02.2019 1 true

и формировать расписание учитывая эти вещи (последний пункт показывает что это событие действует-не отменено)
from здесь из-за того чтобы учитывать отмены в будущем, и кстати это могут быть не только отмены, в предпосл. ввел код события
27 янв 19, 22:34    [21795385]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
Stanislav P
Member

Откуда: Сочи
Сообщений: 65
Я бы решил это так:

Расписание: Код, Дата, Кабинет, Код_занятия, Отменено
Преподаватели: Код, Имя
Студенты: Код, Имя
Занятие: Код, Код_преподавателя, Тема
Занятие_детали: Код, Код_занятия, Код_студента

Кабинет вынес в расписание, так как, вполне возможно, что занятие можно перенести в другой кабинет.
С такой схемой запросы будут проще.
27 янв 19, 22:54    [21795390]     Ответить | Цитировать Сообщить модератору
 Re: В чем синтаксическая ошибка?  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5510
quickstar
sdku, 1 занятие = 1 ученик
20 учеников=20 педагогов
где ж столько педагогов набрать?
1 занятие=1 уч.группа из N учащихся
27 янв 19, 23:08    [21795396]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить