ID、ParentID、タイムスタンプ、値の4つの列を持つテーブルがあるとします。 ParentIDは値の意味を変更します。私はParentID = 1で、TimestampがParentID = 2のテーブル内のアイテムのタイムスタンプ内にあり、ParentID.Value> 10のアイテムのタイムスタンプ内にあるこのテーブルからすべてのエントリを返す必要があります。日付範囲のリミッタを使用して自己結合のクエリを決定するのに役立つ
たとえば、ここいくつかのデータです:
ID ParentID TimeStamp Value
1 1 51 1
2 2 52 11
3 1 53 2
4 1 54 3
5 2 55 9
6 1 56 4
7 2 57 12
8 1 58 5
9 1 53.5 1
私はこのクエリは、SQLまたはLINQでどのように見えるかIDが3、4、8、および9で私にそれらの行を返すクエリが必要?自分で参加することは許されていますか?ここでそのアプローチを使用しますか?私はタイムスタンプの範囲を決定する方法に立ち往生しています。私はSqliteを使用しています。ありがとう。
明確化:私はこれは珍しい問題である= 2
値56は、ParentID = 2のテーブル内のアイテムのタイムスタンプ内にあり、ParentID.Valueが10以上のアイテムであるため、ID = 6はこの基準に従って結果セットに含める必要があります。 – gcbenison
@gcbenison:一方、 'ID = 8'の行は条件を満たしていないようです。私の推測は、OPは、3,4,8、および9の代わりに、3,4,6、および9と言うことを意味しています。 –
gcbenison&Andriy M、あなたはその質問を誤解しました。明らかに、私はそれを明確にするために苦労していたので、心配はしませんでした... ParentID == 2の前の行が10より大きくないため、「6」は有効な答えではありません。 – Brannon