|
Как вывести сотрудников, которые не уволены в период | ☑ | ||
---|---|---|---|---|
0
Zend
31.01.13
✎
09:46
|
Подскажите условие в запрос, которое бы отобрало сотрудников которые ещё работают в указанный период. Что то вообще туплю...
Т.е. нужно отбросить тех кто уволился до ДатыНачала Нужно отбросить тех кто уволился до ДатыОкончания. Если написать Сотрудник.ДатаУвольнения < ДатыОкончания то выведет всех кто сотрудников, которые работают но и тех, которые уволились раньше ДатыОкончания. Что дописать нужно? |
|||
1
nerkadry
31.01.13
✎
09:54
|
работают на дату? или работали в период с .. по ..
|
|||
2
Serg_1960
31.01.13
✎
09:57
|
:)
Выбрать сотрудников, кто работал на дату окончания периода ИЗ тех, кто работал на начало периода. |
|||
3
Zend
31.01.13
✎
10:01
|
(1) Которые работали в период с .. по ..
(2) Как условие такое в запросе написать?))) |
|||
4
nerkadry
31.01.13
✎
10:11
|
(3) которые работали хотя бы 1 день или весь период
|
|||
5
ale-sarin
31.01.13
✎
10:15
|
Сотрудник.ДатаУвольнения Между &ДатаНачала и &ДатаОкончанния ИЛИ Сотрудник.ДатаУвольнения = ДатаВремя(1,1,1)
Как-то так. |
|||
6
ale-sarin
31.01.13
✎
10:15
|
+5 Ступил. Не так.
|
|||
7
Zend
31.01.13
✎
10:19
|
(4) Нужно тех, кто числился не уволенным на ДатуНачала и которые не уволились в период с ДатыНачала-ДатыКонца
Блин, я ещё больше запутался...) |
|||
8
almar
31.01.13
✎
10:22
|
(7) А еще бывают те, кто принят после ДатыНачала
|
|||
9
ale-sarin
31.01.13
✎
10:22
|
(7) Может так: Приняты до даты начала и не уволены до даты окончания?
|
|||
10
Zend
31.01.13
✎
10:26
|
(9) А если его приняли после ДатыНачала, ну т.е. в этот период как раз.
|
|||
11
de Bug
31.01.13
✎
10:26
|
Есои речь идет о тех, кто работал в определенный период, то:
Сотрудник.ДатаПриемаНаРаботу <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) И Сотрудник.ДатаПриемаНаРаботу <= &ДатаОкончания И (Сотрудник.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) ИЛИ Сотрудник.ДатаУвольнения >= &ДатаНачала) |
|||
12
k1us181b
31.01.13
✎
10:30
|
(11) а что может быть Сотрудник.ДатаПриемаНаРаботу = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)?
|
|||
13
Zend
31.01.13
✎
10:34
|
(11) Кто работал, но если человек в этот период был уволен, то его тоже помещать не нужно.
|
|||
14
Serg_1960
31.01.13
✎
10:34
|
(11) В последней строке "...>= &ДатаОкончания". Иначе проскочит сотрудник, принятый после даты начала и уволенный до даты окончания - что противоречит "... не уволены в период"(0)
|
|||
15
k1us181b
31.01.13
✎
10:35
|
Сотрудник.ДатаУвольнения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) И
Сотрудник.ДатаПриемаНаРаботу <= &ДатаОкончания |
|||
16
de Bug
31.01.13
✎
10:37
|
(12) Не принятый на работу. Договорник.
|
|||
17
k1us181b
31.01.13
✎
10:47
|
(15) поправка
Сотрудник.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) И Сотрудник.ДатаПриемаНаРаботу <= &ДатаОкончания |
|||
18
Serg_1960
31.01.13
✎
11:09
|
Вообще-то, я прикалываюсь. Ибо у тс проблема - он некорректно сформулировал задачу.Поэтому и проблемы с условием.
Можно сказать "работали в указанный период", но нельзя сказать "ещё работают в указанный период". Так не говорят. "Ещё работают" - это применительно только к конкретной дате, а не к периоду. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |