Я пытаюсь найти труд и накладные расходы для предметов для отчета. Трудозатраты и накладные расходы определяются путем манипулирования данными из столбцов «Фактор» и «Ставка». Эти факторы и ставки классифицируются по разным типам. Это гораздо сложнее, чем должно быть, и моя работа состоит в том, чтобы разобраться в этом.
Вот фрагмент данных, возвращенных с несортированным столбцом затрат.
Когда тип = W10, то затраты основаны на трудозатратах, когда тип = WO1 или WO2, тогда затраты основаны на накладных расходах.
Мое затруднительное положение сводится к тому, что я должен добавить значения, найденные, когда тип = 'WO1 , WO2' вместе, чтобы получить общие накладные расходы.
Я решил использовать CASE/WHEN, чтобы попытаться получить нужные мне данные, но я не могу понять, как сложить стоимость накладных расходов вместе.
Мой код до сих пор:
SELECT DISTINCT 'LABOR' = CASE
WHEN TYPE = 'W10' THEN (FACTOR * RATE)
ELSE 0
END, //This part is fine//
'OVERHEAD' = CASE
WHEN TYPE = 'WO1, WO2' THEN SUM(FACTOR * RATE)
ELSE 0
END,
FROM TABLE_1
Однако СУММА (коэффициент * ставка) не суммирует две строки затрат, когда тип = WO1 или WO2, она возвращает 0 следующим образом:
Я не знаю, насколько хорошо я описал свою проблему, но было бы здорово, если бы вы, ребята, помогли разобраться с этой проблемой.
mysql
иtsql
(SQL Server). - person sstan   schedule 13.06.2016