【发布时间】:2023-04-06 23:03:02
【问题描述】:
假设我的表结构如下:
id | Word
---|-----
1 | a
2 | aa
. | ..
我有一个这样的 id 列表:
(...,900, 1000, 2000, 3000, 4000,....)
我想在上面的列表中找到小于每个 id 的最大 id。 我的表id不一定是连续的,两个连续的id之间有一些差距,例如:
(...,889,900,950,952,997,1000,1001,1010,1920,2000,2990,3000,3500,4000,...)
根据上述列表的预期结果是:
(889, 997, 1920, 2990, 3500,...)
我如何达到预期的效果?
【问题讨论】:
-
只有889小于上面列表中的每个id
-
这个id列表是从哪里来的?它是表格还是硬编码?您正在搜索的所有这些 id 是否存在,或者它们可能会丢失一些?
-
不幸的是,它们是硬编码的。 AFAIK,一切都存在
-
现在我看到了接受的答案,我理解了这个问题。您应该有一些样本之间的值超过一个。如果两者之间没有,该怎么办。
标签: sql sql-server tsql groupwise-maximum