私は日々変化し、製品の価格を持つテーブルを持って列に参加し、言うことができますTSQLは異なる値
価格(のproductIDはint、価格フロート、dateprice日時)。
これらの価格は週末には存在しないため、テーブルにはすべての日の価格がありません。
productId、day、todayPrice、yesterdayPriceの結果が欲しいです(前日がないため、最初の日付は明らかにこの結果に表示されません)。このような参加は、私が欲しいものを私に与えるだろうと思ったが、うまくいかなかった。
select p1.productId, p1.dateprice, p1.price, p2.price
from price p1
inner join price pr ON pr.productId = p1.productId
inner join price p2 ON p1.dateprice = (select max (p.dateprice)
from price p
where p.dateprice < p1.dateprice)
この選択復帰空の結果が、私は「=」の代わりに使用している場合は(予想通り)「<は、」それは私に多くの同じ行を持つテーブルを返します。
この情報を選択するにはどうすればよいですか?
あなたは 'あなた' on'の句にp2'を参照していませんでした。 – HABO
編集後...私は 'pr'が何をするのか分かりません。なぜ 'p1'から' pr'に参加するのですか? –