1
日付の範囲に基づいて、チャートの後に表示する製品の過去の価格変更を取得するMySQLクエリを探しています。例えば日付の受信範囲。デートが開始されていない場合は、最も近い過去の日付から範囲を取得します
:
Select * from HistoryPrices
where StartDate>='1-1-2016' and EndDate<='1-20-2016'
where ProductID=505
これで結構です。これはもっと興味深いところです。 1-1-2016
に商品の価格変更が含まれていない場合は、1-1-2016
という過去の最も近い日付を取得し、結果に1-1-2016
として記入する必要があります。
12-25-2015
は、価格変更の最も近い過去の日付です。
例:
表は次のようになります。
Date Price
12-25-2015 44.5
1-3-2016 50.5
1-4-2016 45.6
1-10-2016 40.99
1-15-2016 50.50
1-22-2016 50.99
MySQLのクエリの結果は、(2016年1月1日から2016年1月20日まで)のようになります。
1-1-2016 44.5
1-3-2016 50.5
1-4-2016 45.6
1-10-2016 40.99
1-15-2016 50.50
お知らせ1-1-2016
の価格は12-15-2015
です。
この結果を得るためのMySQLクエリを探しています。
このクエリに問題があります。サンプルを見て:http://sqlfiddle.com/#!9/dcf944/9それは1つだけの結果(最後のもの)と2つの結果を返す必要があります。 – Dror
@Drorしたがって、最小日付の日が「01」でない場合、この日の「価格」は必要ありません。 – Blank
私の間違い、私はあなたにそれを与えたURLのサンプルで..私はなぜ私の環境で私は開始日と別の前の価格を得るのか分からない。理由は分かりません。奇妙な。クエリは同じです。 – Dror