我很樂觀,一些聰明的SQL作者可以調整我的查詢以提供我期待的結果。我必須提取目前的稅率爲一個國家和不同稅種(PST/QST/GST/HST)通常每個州有PST/GST或HST。查看下面的數據表,我需要獲得「短名稱」,「名稱」和「生效日期」的不同值的稅率。SQL從稅表中獲得不同的稅率
期望的結果是該表:
EffectiveDate Rate ShortName name
2016-01-01 0.050000 AB GST
2013-04-01 0.050000 BC GST
2013-04-01 0.070000 BC PST
2013-07-01 0.050000 MB GST
2013-07-01 0.080000 MB PST
2016-07-01 0.150000 NB HST
2016-07-01 0.150000 NL HST
2016-01-01 0.150000 NS HST
2016-01-01 0.050000 NT GST
2016-01-01 0.050000 NU GST
2015-04-01 0.130000 ON HST
2016-10-01 0.150000 PE HST
2013-01-01 0.050000 QC GST
2017-03-01 0.099750 QC QST
2016-01-01 0.050000 SK GST
2017-03-01 0.060000 SK PST
2009-02-01 0.050000 YT GST
我的查詢到目前爲止:
SELECT --TaxRates.ID, --TaxRates.StateId, TaxRateDetails.id,
TaxRateDetails.EffectiveDate, TaxRateDetails.Rate,--TaxRateDetails.TaxRateId,
States.ShortName, TaxImpositionTypes.name -- DISTINCT Name,states.ShortName, TaxRateDetails.Id,TaxImpositionTypeDetailId
FROM dbo.TaxRates
join dbo.TaxRateDetails ON TaxRateDetails.TaxRateId = TaxRates.Id
INNER JOIN States ON dbo.TaxRates.StateId = States.Id AND States.IsActive =1
INNER JOIN TaxImpositionTypeDetails ON TaxRateDetails.TaxImpositionTypeDetailId = TaxImpositionTypeDetails.Id
INNER JOIN TaxImpositionTypes ON dbo.TaxImpositionTypeDetails.TaxImpositionTypeId = TaxImpositionTypes.Id
WHERE EffectiveDate < CURRENT_TIMESTAMP
order BY ShortName
此查詢創建此源表如下:
EffectiveDate Rate ShortName name
2016-01-01 0.050000 AB GST
2009-02-01 0.050000 AB GST
2013-04-01 0.050000 BC GST
2013-04-01 0.070000 BC PST
2013-04-01 0.050000 BC GST
2013-04-01 0.070000 BC PST
2013-07-01 0.050000 MB GST
2013-07-01 0.080000 MB PST
2010-07-01 0.130000 NB HST
2016-07-01 0.150000 NB HST
2010-07-01 0.130000 NB HST
2009-02-01 13.000000 NL HST
2016-07-01 0.150000 NL HST
2010-07-01 0.130000 NL HST
2016-01-01 0.150000 NS HST
2010-07-01 0.150000 NS HST
2016-01-01 0.050000 NT GST
2009-02-01 0.050000 NT GST
2016-01-01 0.050000 NU GST
2009-02-01 0.050000 NU GST
2010-07-01 0.130000 ON HST
2009-02-01 0.050000 ON HST
2009-02-01 0.080000 ON PST
2010-03-01 0.130000 ON HST
2015-04-01 0.130000 ON HST
2015-04-01 0.000100 ON PST
2009-02-01 13.000000 PE HST
2013-04-01 0.140000 PE HST
2016-10-01 0.150000 PE HST
2013-01-01 0.050000 QC GST
2013-01-01 0.010000 QC QST
2012-01-01 0.050000 QC GST
2012-01-01 0.095000 QC QST
2017-03-01 0.099750 QC QST
2016-01-01 0.050000 SK GST
2016-01-01 0.050000 SK PST
2009-02-01 0.050000 SK GST
2009-02-01 0.050000 SK PST
2017-03-01 0.060000 SK PST
2009-02-01 0.050000 YT GST
因此,您需要最新的唯一短名稱,名稱組合的最新日期率? – xQbert