世界銀行の国の収入レベルをデータセットにマッピングしようとしています。収入レベルは年々変化するため、トランザクションの国と日付を使用して、適切な収入レベルをトランザクションにマッピングする必要があります。
次の表は、レイアウトと問題を示しています。
Example - Table 1 Table 2
----------------- ----------------------------------------
|ISOCountryCode3, PODate | |CountryAlpha3, StartDate, EndDate, IncomeClass|
|CIV, '2009-11-01' | | CIV, 1989-10-02, 1989-09-12, lower |
|ALB, '2007-01-04' | | CIV, 2009-01-01, 2010-01-01, lower |
| CIV, 2010-01-02, 2011-01-01, middle |
システムは以下を返します。
|CIV, '2009-11-01', lower|
|...
これまでに試したSQLは次のとおりです
SELECT mergestandard.*,incomeclassifications.IncomeClass
FROM `mergestandard`
LEFT OUTER JOIN incomeclassifications
ON mergestandard.ISOCountryCode3 = incomeclassifications.CountryAlpha3
AND mergestandard.PODate<=incomeclassifications.EndDate
AND mergestandard.PODate>=incomeclassifications.StartDate
残念ながら、システムは、incomeclass フィールドに null を返し続けます。どんな助けでも大歓迎です!