我已经搜索了很长时间,但似乎找不到适合我的东西,因为每个类似的问题都是关于达到某一列的总和。
我正在寻找一种方法来搜索表中所有具有多个公共列值的记录 - 它们不是表中的连续记录,但当考虑到公共值时它们必须是连续记录 - 并检索所有记录直到一个特定的列具有不同的值。
给定数据:
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
我正在尝试检索具有 SecondaryID=9 和 TertiaryID=4 的记录,直到 Limit=0(按 DateTime DESC 排序)。
使用 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 中对其进行循环 - 目前有数百个结果(并且每周都在增长),在生产中工作太慢了。