У меня следующий запрос SQL:
SELECT CountryID, [10201] AS CountryGDPPerCapita, [10677] AS LifeExpTotal
FROM
(
SELECT CountryID,FieldID,numeric
FROM globaledge.dbo.DIBS_Data
WHERE CountryID IN (3,5)
AND FieldID IN (10201,10677)
AND year = 2002
) SourceTable
PIVOT
(
MAX(numeric)
FOR FieldID IN ([10201],[10677])
) AS PivotTable
ORDER BY PivotTable.CountryID
Это возвращает что-то похожее на это:
CountryID СтранаGDPPerCapita LifeExpTotal
3 35985,78 77,24
5 9147,7 74,54
Тогда у меня есть еще один запрос:
SELECT CountryName, CountryGDP, CountryGDPGrowth
FROM globaledge.dbo.Country_Statistics
WHERE CountryID IN (3,5)
AND year=2002
Order By CountryName
Который производит следующее:
CountryName CountryGDP СтранаGDPGrowth
Мексика 1567000000000000 1,3
США 14440000000000000 0,4
Также обратите внимание, у меня есть CountryID в обеих таблицах, которые относятся к одной и той же стране. Я хочу создать один SQL-запрос, возможно, с INNER JOIN, который будет возвращать следующее:
СтранаНазвание СтранаGDP СтранаGDPРост страныGDPPerCapita LifeExpTotal
Мексика 156700000000000000 1,3 35985,78 77,24
США 144400000000000000 0,4 9147,7 74,54
Может ли кто-нибудь помочь мне сделать этот запрос? или скажите, если это возможно?