|
|
|
выборка записей из таблици
|
|||
|---|---|---|---|
|
#18+
привет всем это таблица БД для кадров и для решения задачи тут по моему не обиоти без VBA Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. обсудим на примере для получения состава конкретного отдела на дату например 16.01.2008 создаём временную таблицу TABtmp1 ( отсортирован по уб поле DDate ) И в этом таблице удалим лишние записы при её анализе логика такая 1. если Count_долж_ID=1 удаляем с таблици все заприсы долж_ID =1002 в данном случае удаляем запись 7091, кроме полледней по дате т.е. запись 9488 продолжимь 2. если Count_долж_ID=Null и Out=Yes, что обозначаеть что сотрудник уволень или переведён с этого отдела , то удаляём всё записи удовл User_ID=1104, запись 9487 и 7097 3. если Count_долж_ID=Null и Out=No, то остовляем записей для каждого сотрудника последней по дате осталние удаляем итого получаеться Код: plaintext 1. 2. 3. 4. 5. 6. 7. вот тот которий оставить в таблице для каждого User_ID записы на последную дату но не могу реализовать точьно логику описанную по тем 3-м пунктам выше Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. помогите а то 2-ой день мучаюсь и не получаеться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2008, 11:19 |
|
||
|
выборка записей из таблици
|
|||
|---|---|---|---|
|
#18+
Не могу понять по приведенному описанию что вы хотите получить. Обычно таблица назначений (соединяющую таблицы должностей и работников) хранит всю историю перемещений кадров. Вы хотите убить эту историю? Зачем? Напишите запрос который соединит эти таблицы нормально пример для аксесс: SELECT MAX(Дата), LAST(ДолжностьID) As рДолжностьID, LAST(РаботникID) As рРаботникID GROUP BY ДолжностьID, РаботникID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2008, 12:09 |
|
||
|
выборка записей из таблици
|
|||
|---|---|---|---|
|
#18+
WorobjoffОбычно таблица назначений (соединяющую таблицы должностей и работников) хранит всю историю перемещений кадров. Вы хотите убить эту историю? Зачем? у меня точно так таблица назначений таблицы должностей и таблица работников при поиске состава отдела на конкетную дату я делаю виборку от таблицы назначений в таблицу TABtmp1 а запрос тут не помог потому что условия сложние 1. если Count_долж_ID=1 удаляем с таблици все заприсы долж_ID =1002 в данном случае удаляем запись 7091, кроме полледней по дате т.е. запись 9488 продолжимь 2. если Count_долж_ID=Null и Out=Yes, что обозначаеть что сотрудник уволень или переведён с этого отдела , то удаляём всё записи удовл User_ID=1104, запись 9487 и 7097 3. если Count_долж_ID=Null и Out=No, то остовляем записей для каждого сотрудника последней по дате осталние удаляем 1.1 Count_долж_ID=1 на пример для управ. отделом вед количество для него всего 1 и итого при поиске состава отдела на конкетную дату надо оставить тот запись которий по дате самый поздний для этой конкретной долж_ID =1002 3.1 эсли на должность могут быть несколько сотрудников ( лаборант на пр.) то тогда надо учитивать и User_ID и для каждого из них оставить по дате самый поздний 2.1 а если сотрудник по информации последней ее записы уволен Out=Yes то надо удалит все записи на его b]User_ID вот вся логика и ее не помести в простой запрос а нужен VBA ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2008, 12:39 |
|
||
|
выборка записей из таблици
|
|||
|---|---|---|---|
|
#18+
Anapurna??? Скидывайте результат запроса из БД в АДО Рекордсет. Запишите себе на бумажке алгоритм обработки, потом (раз запросом это не сделать) примените записанный алгоритм к имеющемуся объекту ADO Recordset. Какое-то здорово кривое решение. Может, если один запрос не помог, поможет последовательность из 2-х или 3-х SQL-инструкций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2008, 20:16 |
|
||
|
|

start [/forum/search_topic.php?author=Sergey+Selatin&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
get settings: |
11ms |
get forum list: |
19ms |
get settings: |
10ms |
get forum list: |
15ms |
get settings: |
7ms |
get forum list: |
21ms |
get settings: |
8ms |
get forum list: |
18ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 6424ms |
| total: | 6709ms |

| 0 / 0 |
