나는 내 문은 최고 또는 정확 확신하고 오류가 발생하고 있지 않다SQL보기 - 도전
는 "진행 뷰에서 작업"을 만들려고 작은 도전이 "하위 쿼리는 1 개 이상의 값을 반환 "
세 개의 키 테이블이 있습니다.
- 작업
- PurchaseOrderItem
- 자원
고유 참조 필드가 예를 들어, 모든 테이블에 걸쳐있다 Tasks.TA_SEQ, PurchaseOrderItem.TA_SEQ 및 Resource.TA_SEQ
이 모든 테이블에서 서로 다른 합계를 계산해야하며 다음과 같은 관계가 있습니다.
- 1 작업 - 많은 PurchaseOrderItem
- 1 작업 - 많은 자원 나는 또한 작업 및 활성 구매 주문에 대해 (라인 항목은 다를 수 있음) 모든 구매 주문 비용 값을 합산 할 필요가
모든 자원 비용 (3 명 - 수량이 다를 수 있음)을 작업에 대해 합산하면 모든 도움을받을 수 있습니다. 만약 내가 그것을 만들 수 있다면 더 쉽게 모든 조언을 부탁드립니다.
제 검색어의 일부는 그대로 있습니다.
SELECT
dbo.F_TASKS.TA_SEQ,
(
SELECT
SUM(POI_TOTAL)
From F_PO_ITEM
where POI_FKEY_TA_SEQ = dbo.F_TASKS.TA_SEQ
and POI_FKEY_POH_SEQ in
(
select
POH_SEQ
from F_PO_HEAD
where POH_STATUS in ('DORMANT', 'ACTIVE')
)
) AS [Pending PO Cost],
dbo.F_TASKS.TA_PO_COST AS [PO Cost],
dbo.F_TASKS.TA_LABOUR_COST AS [Labour Cost],
dbo.F_TASKS.TA_LABOUR_COST - SUM(dbo.F_TASK_TIME.TT_OTHER_COSTS) AS [New Labour Cost],
-----------Not Working from
(select
SUM(dbo.F_TASK_TIME.TT_OTHER_COSTS)
from F_TASK_TIME
where TT_FKEY_TA_SEQ = dbo.F_TASKS.TA_SEQ) + dbo.F_TASKS.TA_PO_COST AS [Subcontractor Costs],
(SUM(dbo.F_TASK_TIME.TT_OTHER_COSTS + dbo.F_TASKS.TA_PO_COST)) * 0.12 AS [Subcontractor Uplift],
((SUM(dbo.F_TASK_TIME.TT_OTHER_COSTS + dbo.F_TASKS.TA_PO_COST)) * 0.12) + (SUM(dbo.F_TASK_TIME.TT_OTHER_COSTS + dbo.F_TASKS.TA_PO_COST)) AS [Subcontractor Uplift Total]
-----------Not Working To
FROM dbo.F_TASKS
LEFT OUTER JOIN dbo.F_TASK_TIME
ON dbo.F_TASKS.TA_SEQ = dbo.F_TASK_TIME.TT_FKEY_TA_SEQ
LEFT OUTER JOIN dbo.F_PO_ITEM
ON dbo.F_TASKS.TA_SEQ = dbo.F_PO_ITEM.POI_FKEY_TA_SEQ
WHERE (dbo.F_TASKS.TA_TASK_DESC = 'BREAKDOWN')
AND (dbo.F_TASKS.TA_PO_COST >= 0)
AND (dbo.F_TASKS.TA_STATUS IN ('ACTIVE', 'ASSIGNED', 'COMPLETE'))
GROUP BY dbo.F_TASKS.TA_PO_COST, dbo.F_TASKS.TA_SEQ, dbo.F_TASKS.TA_LABOUR_COST
첫 번째는이 mysql 또는 SQLServer입니까? – Zane
mysql 일 수 없습니다. '[]'괄호는 불평 할 것이다. –
dbo. -> 99.99 %는 SQL Server입니다 :-). – Marian