Я знаю, что это, вероятно, простая проблема, которую я полностью обдумываю, так что вот так:
У меня есть таблица LaborTransaction со следующими столбцами: (Таблица 1)
Laborcode | Hours | OTHours | Tag
JSMITH | 2.0 | 0.0 | VACATION
JSMITH | 4.0 | 3.0 | PERSONAL
JSMITH | 3.0 | 0.0 | VACATION
JSMITH | 5.0 | 1.0 |
JSMITH | 7.0 | 4.0 |
Мне нужно создать следующую таблицу: (Таблица 2)
Laborcode | Regular | Vacation | Personal | OT
JSMITH | 12.0 | 5.0 | 4.0 | 8.0
По сути, мне просто нужно сложить все трудовые транзакции и проверить метку.
- Если тег (T1) не заполнен, то часы (T1) суммируются в обычном (T2)
- Если тег (T1) равен «ОТПУСК», то часы (T1) суммируются в отпуске (T2)
- Если тег (T1) «ЛИЧНЫЙ», то часы (T1) суммируются в личном (T2)
- OTHours (T1) суммируется по ВСЕМ записям в OT (T2)
В моей первой попытке я сам присоединился к таблице, но получал дублированные результаты. Обычные, Отпускные, Личные и ОТ добавляли одну и ту же трудовую транзакцию несколько раз. Я использую MS SQL для создания второй таблицы. Любая помощь очень ценится! Спасибо!