私はこれについてかなり長い間検索してきましたが、同様の質問はすべて列の特定の合計に到達することに関するものであるため、私に役立つものを見つけることができないようです。
テーブル内のすべてのレコードを検索して、いくつかの共通の列値を持つレコードを検索する方法を探しています - それらはテーブル内の連続したレコードではありませんが、共通の値が考慮されている場合は連続したレコードでなければなりません - まですべてのレコードを取得します特定の列の値が異なります。
与えられたデータ:
PrimaryID SecondaryID TertiaryID Limit DateTime
12 9 4 1 2013-03-22 00:00:14
11 9 4 1 2013-03-22 00:00:13
10 54 11 0 2013-03-22 00:00:12
9 9 4 1 2013-03-22 00:00:11
8 9 23 1 2013-03-22 00:00:10
7 9 4 1 2013-03-22 00:00:09
6 9 4 0 2013-03-22 00:00:08
5 9 16 0 2013-03-22 00:00:07
4 72 32 0 2013-03-22 00:00:06
3 9 4 1 2013-03-22 00:00:05
2 9 4 1 2013-03-22 00:00:04
1 9 4 0 2013-03-22 00:00:03
Limit=0 (DateTime DESC 順) まで、SecondaryID=9 と TertiaryID=4 の両方を持つレコードを取得しようとしています。
PrimaryID 12 を出発点として使用すると、次のことが期待されます。
PrimaryID SecondaryID TertiaryID Limit DateTime
12 9 4 1 2013-03-22 00:00:14
11 9 4 1 2013-03-22 00:00:13
9 9 4 1 2013-03-22 00:00:11
7 9 4 1 2013-03-22 00:00:09
そして、開始点としての PrimaryID 3 の場合:
PrimaryID SecondaryID TertiaryID Limit DateTime
3 9 4 1 2013-03-22 00:00:05
2 9 4 1 2013-03-22 00:00:04
現在、SecondaryID=9 と TertiaryID=4 のすべての結果を取得してから、PHP でループしています。現在、数百の結果 (および毎週増加) では、実稼働環境で作業するには遅すぎます。