使用特定模式访问 SQL 查询选择
Posted
技术标签:
【中文标题】使用特定模式访问 SQL 查询选择【英文标题】:Access SQL query select with a specific pattern 【发布时间】:2016-04-19 18:51:38 【问题描述】:我想选择每 5 行是唯一的,并且选择模式适用于其余的结果(即,如果结果包含 10 条记录,我希望有 2 组 5 个唯一的行)
例子:
我有什么: 1 1 5 3 4 5 2 4 2 3 我想要达到的结果: 1 2 3 4 5 1 2 3 4 5我已经尝试并搜索了很多,但找不到任何接近我想要实现的目标。
【问题讨论】:
“我想选择每 5 行”。下一个:“结果是 2x5 还是 2x6 都没有关系”。那你想要什么? @Gustav 看起来您首先没有理解我的问题,2x5 只是一个示例,我只想选择具有特定模式的行,该特定模式在结果表的其余部分重复。 是的,我必须承认我不明白这个问题。 【参考方案1】:假设您可以以某种方式对 5 个集合中的行进行排序:
SELECT t.Row % 5, t.Row FROM #T t
ORDER BY t.Row , t.Row % 5
我们可能会更详细地了解您的数据是什么样的以及您实际尝试执行的操作,从而更接近真相。
【讨论】:
【参考方案2】:这将适用于您提供的数据样本
SELECT DISTINCT(thevalue) FROM theresults
UNION ALL
SELECT DISTINCT(thevalue) FROM theresults
但我不清楚它是否真的是你需要的。
例如:
如果您的表/结果返回 12 行,您还需要 2x5 行还是需要 2x6 行?
您的表/结果中是否总是有相同的双行?
还有很多问题要提出,但在您提出的问题中没有任何暗示。
【讨论】:
谢谢你的回答,我的表是固定大小的,大约 120 条记录,结果是 2x5 还是 2x6 都没有关系,我唯一要寻找的是按模式选择,例如那个,并且 union 不适用于我的情况,谢谢。以上是关于使用特定模式访问 SQL 查询选择的主要内容,如果未能解决你的问题,请参考以下文章