따라서 ID, Date, Toy_obje, 통화 (USD, GBP 또는 EUR 일 수 있음) 및 예산이있는 TOY_DETAILS라는 단일 테이블이 있습니다.
이제 모든 것을 반환하는 SQL 쿼리를 만들고 싶습니다.
내가 시도한 것.
SELECT ID, Date,Toy_object, currency, budget,
CASE currency
WHEN 'GBP' THEN budget*1.5
WHEN 'EUR' THEN budget*1.2
ELSE budget
END AS USD_Value
(SELECT SUM(USD_Value) FROM PROJECT_DETAILS) AS Total_Budget
FROM PROJECT_DETAILS
내 문제는 2)입니다. Total_Budget가 USD_Value 열의 SUM이되기를 원하지만 'SUM (USD_Value)'를 입력 할 수 없어 '열이 존재하지 않습니다'라는 원인이됩니까?
미리 감사드립니다.
CASE
내부의 표현식 을 반복해야 합니다 SUM
.
SELECT ID, Date,Toy_object, currency, budget,
CASE currency
WHEN 'GBP' THEN budget*1.67
WHEN 'EUR' THEN budget*1.3
ELSE budget END AS USD_Value,
SUM(CASE currency
WHEN 'GBP' THEN budget*1.67
WHEN 'EUR' THEN budget*1.3
ELSE budget
END) OVER() AS Total_Budget
FROM PROJECT_DETAILS
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다