|
Запрос на меньшую дату | ☑ | ||
---|---|---|---|---|
0
Иван-1C
28.02.19
✎
16:35
|
Добрый день!
Есть таблица ЧасыРаботы: Сотрудники Дата ЧасыРаботы Иванов 01.01.2019 8 Иванов 02.01.2019 4 Иванов 03.01.2019 8 Иванов 04.01.2019 8 Иванов 05.01.2019 8 И есть таблица Начисления: Сотрудники Начисление ДатаОкончания Иванов Оклад 03.01.2019 Иванов Тариф 31.12.3999 Нужно запросом получить таблицу Результат: Сотрудники Дата ЧасыРаботы Начисление Иванов 01.01.2019 8 Оклад Иванов 02.01.2019 4 Оклад Иванов 03.01.2019 8 Оклад Иванов 04.01.2019 8 Тариф Иванов 05.01.2019 8 Тариф Никак не получается |
|||
1
sqr4
28.02.19
✎
16:38
|
в соединение условие на дату >=
|
|||
2
sqr4
28.02.19
✎
16:39
|
Выбираешь минимальные даты
|
|||
3
sqr4
28.02.19
✎
16:39
|
И затем соединяешь еще раз по ним
|
|||
4
sqr4
28.02.19
✎
16:39
|
Я не знаю зачем я так пишу. Исправлюсь
|
|||
5
palsergeich
28.02.19
✎
16:40
|
Где то в недавних темах я очень похожую по стилю задачу видел.
Напиши хоть куда собеседуешься |
|||
6
palsergeich
28.02.19
✎
16:41
|
Зуб даю из письма или Ворда копипастишь
|
|||
7
Вафель
28.02.19
✎
16:47
|
нужно из таблицы сделать таблицу
Сотрудники Начисление ДатаОкончания ДатаНачала Иванов Оклад 03.01.2019 Иванов Тариф 31.12.3999 03.01.2019 |
|||
8
Иван-1C
28.02.19
✎
16:55
|
(7) А как добавить и заполнить колонку ДатаНачала?
Таблица Начисления может и так выглядеть: Сотрудники Начисление ДатаОкончания Иванов Оклад 03.01.2019 Иванов Тариф 06.01.2019 Иванов Оклад 31.12.3999 |
|||
9
Вафель
28.02.19
✎
16:55
|
(8) задача аналогична написания срезпослдених вручную
|
|||
10
Иван-1C
28.02.19
✎
17:05
|
(9) и как она решается?
|
|||
11
Alexandr_U1982
28.02.19
✎
17:06
|
(10) См. (1)
|
|||
12
Иван-1C
28.02.19
✎
17:35
|
(11)
ВЫБРАТЬ ЧасыРаботы.Сотрудники КАК Сотрудники, ЧасыРаботы.Дата КАК Дата, ЧасыРаботы.Часы КАК Часы, Начисления.Начисление КАК Начисление, Начисления.ДатаОкончания КАК НачислениеДатаОкончания ПОМЕСТИТЬ ВТЧасыРаботыНачисления ИЗ ЧасыРаботы КАК ЧасыРаботы ЛЕВОЕ СОЕДИНЕНИЕ Начисления КАК Начисления ПО ЧасыРаботы.Сотрудник = Начисления.Сотрудник И ЧасыРаботы.Дата >= Начисления.ДатаОкончания Получаю ВТЧасыРаботыНачисления Сотрудники Дата Часы Начисление ДатаОкончания Иванов 01.01.2019 8 Иванов 02.01.2019 4 Иванов 03.01.2019 8 Оклад 03.01.2019 Иванов 04.01.2019 8 Оклад 03.01.2019 Иванов 05.01.2019 8 Оклад 03.01.2019 Как-то не очень смотрится.. И как выглядит следующее действие "Выбираешь минимальные даты". Из чего выбирать? |
|||
13
Alexandr_U1982
28.02.19
✎
17:36
|
(120 Сгруппируй
|
|||
14
Иван-1C
28.02.19
✎
17:41
|
(13) Что сгруппировать? ВТЧасыРаботыНачисления ???
по чем группировать? |
|||
15
sqr4
28.02.19
✎
17:44
|
(12) Наоборот все, тогда Меньше или равно
|
|||
16
Alexandr_U1982
28.02.19
✎
17:47
|
ВЫБРАТЬ
ЧасыРаботы.Сотрудники КАК Сотрудники, ЧасыРаботы.Дата КАК Дата, ЧасыРаботы.Часы КАК Часы, МАКСИМУМ(Начисления.ДатаОкончания) КАК ДатаАктуальности ПОМЕСТИТЬ ВТЧасыРаботыНачисления ИЗ ЧасыРаботы КАК ЧасыРаботы ЛЕВОЕ СОЕДИНЕНИЕ Начисления КАК Начисления ПО ЧасыРаботы.Сотрудник = Начисления.Сотрудник И ЧасыРаботы.Дата <= Начисления.ДатаОкончания СГРУППИРОВАТЬ ПО ЧасыРаботы.Сотрудники, ЧасыРаботы.Дата, ЧасыРаботы.Часы ; ВЫБРАТЬ ВТЧасыРаботыНачисленияКАК Сотрудники, ВТЧасыРаботыНачисленияКАК Дата, ВТЧасыРаботыНачисленияКАК Часы, Начисления.Начисление КАК Начисление ИЗ ВТЧасыРаботыНачисления КАК ВТЧасыРаботыНачисления ЛЕВОЕ СОЕДИНЕНЕ Начисления КАК Начисления ПО ВТЧасыРаботыНачисления.Сотрудники = Начисления.Сотрудники И ВТЧасыРаботыНачисления.ДатаАктуальности = Начисления.ДатаОкончания |
|||
17
sqr4
28.02.19
✎
17:56
|
(16) не выдержал да?)
|
|||
18
Alexandr_U1982
28.02.19
✎
17:58
|
(17) Ага
|
|||
19
Иван-1C
28.02.19
✎
18:00
|
(16) В этом случае ВТЧасыРаботыНачисления выглядит так:
Сотрудники Дата Часы ДатаОкончания Иванов 01.01.2019 8 31.12.3999 Иванов 02.01.2019 4 31.12.3999 Иванов 03.01.2019 8 31.12.3999 Иванов 04.01.2019 8 31.12.3999 Иванов 05.01.2019 8 31.12.3999 |
|||
20
Alexandr_U1982
28.02.19
✎
18:02
|
(19) Максимум замени на Минимум
|
|||
21
Вафель
28.02.19
✎
18:04
|
(16) не верно же.
должно быть условие на дата между датанач и датакон |
|||
22
Иван-1C
28.02.19
✎
18:07
|
(20) Да, похоже на правду! Бинго!!!
|
|||
23
Alexandr_U1982
28.02.19
✎
18:11
|
(21)Ошибка только в "Максимум" вместо "Минимум".
|
|||
24
Alexandr_U1982
28.02.19
✎
18:12
|
(22) Откуда взял эту задачу? Собеседование?
|
|||
25
Иван-1C
28.02.19
✎
18:14
|
(24) Нет, отчет по переработкам ваяю. Часы работы сотрудника с регистром плановых начислений соединяю
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |