|
|
|
Неординарный запрос на Jet-SQL
|
|||
|---|---|---|---|
|
#18+
Есть таблица посещений студентами (Student) занятий (Class) (задача реальная, в студенческие времена таким не занимался, а видать надо было:): Attendance ID StudentClassID dtDate isAttended isAbsent isSick ......... Необходимо определять пропустил ли данный StudentClassID первые три дня обучения (isAbsent=True). Пробую так: Идея в том чтобы найти сумму хронологически первых трех флагов isAbsent, потом можно проверить, если она = -3 то это то, что надо) Select StudentClassID, (Select Sum(isAbsent ) From (Select Top 3 isAbsent From Attendance A Where A.StudentClassID = SC.StudentClassID Order by dtDate )) From qryStudentClass SC Но это не рабочий вариант т.к. самый внутренний запрос "не видит" самый внешний SC.StudentClassID Буду благодарен за Ваши идеи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 17:14 |
|
||
|
Неординарный запрос на Jet-SQL
|
|||
|---|---|---|---|
|
#18+
Я пьян и за не правельные идеи проше не критиковать, мне сегодня 24. Смотрю и вижу, что ты пытаешься использовать кориллирующий запрос так скажем 2-го уровня вложенности. такая конструкция работает к примеру: select id,name,(select chtoNibud from bb as b where b.id=a.id) from aa as a Причем кориллирующий запрос обязательно долже возвращыть 1-ну строу (т.е. top 3 не подойдет)----> top 3 используй в самом внешнем запросе Вопрос в другом, Ты говоришь что не видет самый внутренний запрос(скажем что это коррелирующий запрос 2-го уровня) сымый внешний запрос (самому такого писать не приходилось - т.е. коррелирующие запросы писал, но чтоб 2-го уровня, НЕТ). попробуй связать внешний запрос с коррелирующим запросом 1-го уровня, а коррелирующий запрос 1-го уровня с коррелирующим запросом 2-го уровня. И опять повтрорюсь я пьян и уже совсем плохо сооображаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 17:33 |
|
||
|
Неординарный запрос на Jet-SQL
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 17:36 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32549080&tid=1674093]: |
0ms |
get settings: |
6ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
160ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 450ms |

| 0 / 0 |
