我有以下兩個表:SQL查詢改變
1)表名:週期
+----------+
| PeriodID |
+----------+
| 1 |
| 2 |
| 3 |
| 4 |
+----------+
2)表名稱:值
+-------------+--------+
| StartPeriod | Amount |
+-------------+--------+
| 1 | 100 |
| 3 | 200 |
+-------------+--------+
第一個表表示時間期間,如月。第二張表格表示每個月的金額,但僅限於與上個月不同的金額。金額從100開始,第2期保持在100,然後在第3期開始時跳到200,之後保持在200。
我需要一個查詢(MySQL的)返回的金額每個時期,像這樣:
+----------+--------+
| PeriodID | Amount |
+----------+--------+
| 1 | 100 |
| 2 | 100 |
| 3 | 200 |
| 4 | 200 |
+----------+--------+
所以查詢將返回最新StartPeriod的數量,在值表使用小於或等於PeriodID。例如,對於PeriodID 2,它將返回Amount for StartPeriod 1,因爲StartPeriod2沒有值,1是小於或等於2的最大值,該值在值表中具有Amount。
(對不起,表格太難看了)
謝謝!
爲什麼不喜歡的事情startPeriod = 2,金額爲100添加記錄?看起來有點傻,不得不依賴更復雜的查詢結構,因爲您尚未設置數據以允許有效查詢。 –