|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Добрый день форумчане Подскажите, пожалуйста, как правильно сделать выборку в выборке Есть первоначально 3 таблицы (STAFF, STAFF_REF,SUBDIV_REF) связь которых мне дают результат: отдел-> список сотрудников Есть еще одна таблица (TABEL_INTERMEDIADATE), в которой регистрируется время прохода сотрудника через дверь с замком. В таблице TABEL_INTERMEDIADATE за день по сотруднику может быть много записей, так как котрольных дверей, где он проходит много, сотрудник также может выходить и заходить в офис. Задача: Для каждого отдела вывести список сотрудников с временем прихода и ухода с работы. Время прихода возьмем MIN() время из TABEL_INTERMEDIADATE по сотруднику, а время ухода соответственно MAX() В примере я показываю только одну выборку в результате которой у меня получается ошибка использования MAX, MIN с агрегатными функциями, прошу направить в правильное русло и подсказать как правильно написать запрос в запросе авторSELECT s.FULL_FIO AS "ФИО", d.DISPLAY_NAME AS "Департамент", MIN(t.TIME_PASS) AS "Время прихода", MAX(t.TIME_PASS) AS "Время ухода", t.DATE_PASS FROM STAFF s JOIN STAFF_REF r ON s.ID_STAFF=r.STAFF_ID JOIN SUBDIV_REF d ON r.SUBDIV_ID=d.ID_REF JOIN TABEL_INTERMEDIADATE t ON t.STAFF_ID=s.ID_STAFF WHERE d.DISPLAY_NAME = 'АУП' AND t.DATE_PASS='2018-04-05' исходные данные: Иванов Иван Иванович АУП 7:34:55 2018-04-05 Иванов Иван Иванович АУП 8:15:55 2018-04-05 Иванов Иван Иванович АУП 11:34:55 2018-04-05 Иванов Иван Иванович АУП 11:55:55 2018-04-05 Иванов Иван Иванович АУП 15:00:00 2018-04-05 Иванов Иван Иванович АУП 16:33:22 2018-04-05 Иванов Иван Иванович АУП 16:44:11 2018-04-05 Иванов Иван Иванович АУП 17:01:55 2018-04-05 Иванов Иван Иванович АУП 17:13:55 2018-04-05 Результат должен быть таким: Иванов Иван Иванович АУП 7:34:55 17:13:55 2018-04-05 Заранее всем спасибо за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:10 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
никому не говори версию сервера Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:13 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Foxxtrott85, GROUP BY, не? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:24 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Foxxtrott85, Добрый полицейский. Типа того: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Индексы по дате надо построить и ascending и descending для скорости выполнения. Можно min() и мах() заменить на first с соответствующей сортировкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:25 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Мимопроходящий, 2.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:37 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
KreatorXXI, Спасибо большое! то что нужно! знаний не хватало реализовать =( ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:38 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
04.02.2019 16:37, Foxxtrott85 пишет: > 2.5 ну, тогда есть простор для творчества... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:42 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Foxxtrott85, индексы проверьте. STAFF_ID + DATE_PASS. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:45 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
KreatorXXI, а если сотрудник ушёл после полуночи? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 16:51 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
vvvait, Тогда нужен индентификатор приход/уход. А если в базе СКУД вообще данные пропадают (так бывает, нужно программно их востанавливать)? Я вообще в курсе СКУД. Там не всё так просто. Но пока ТС просит упрощённо. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 17:00 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
О_о, PERCo! Знакомая тема. Там вроде с событиями другая таблица, позже скажу, посмотреть надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2019, 06:08 |
|
Выборка из выборки
|
|||
---|---|---|---|
#18+
Так мы вытаскиваем события за последние 5 часов Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2019, 07:41 |
|
|
start [/forum/topic.php?fid=40&msg=39769465&tid=1560821]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
154ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 258ms |
0 / 0 |