找到增值稅稅率,我有這樣的兩個表:從兩個表中選擇基於有效日期
mysql> desc vat_rates; +-------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+---------------+------+-----+---------+-------+ | rate_id | varchar(5) | NO | PRI | NULL | | | name | varchar(255) | NO | | NULL | | | type | enum('O','I') | NO | | NULL | | | default | tinyint(1) | YES | | 0 | | +-------------+---------------+------+-----+---------+-------+ 6 rows in set (0.00 sec) mysql> desc vat_rates_details; +-------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+-------+ | rate_id | varchar(10) | NO | | NULL | | | effect_date | date | NO | | NULL | | | rate | float | NO | | NULL | | +-------------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
我需要一個查詢,讓我vat_rates.name,vat_rates.rate_id,vat_rates_details.rate其中effect_date是MAX()但是< =比now()。
簡化起見,我需要選擇所有vat_rates,其中rate字段是基於effect_date的最後一個日期,但不是將來。
實施例與數據:
vat_rates:
rate_id = 'L9'
名= 'MyVatName'
類型= 'O'
默認= 1個
vat_rates_details(第1行):
rate_id ='L9'
effect_date ='200 0-01-01'
率= 20
vat_rates_details(線2):
rate_id = 'L9'
effect_date = '2010-06-01'
率= 19
vat_rates_details(第3行):
rate_id = 'L9'
effect_date = '2010-07-01'
率= 21
預期的結果:
+-------------+-------------+------+ | rate_id | name | rate | +-------------+-------------+------+ | L9 | MyVatName | 19 | +-------------+-------------+------+
感謝您的時間:)
編輯:預期收益率是19不是20韓國社交協會賈斯汀。
不是你期待的19的速度,而不是20? – 2010-06-29 18:49:36
你是對的Justin我的壞。 – mjsilva 2010-06-29 20:32:54