gpt4 book ai didi

mysql - 为前 n 个不同的元素选择行(两列或更多列)

转载 作者:行者123 更新时间:2023-11-30 22:19:01 26 4
gpt4 key购买 nike

给定以下数据集,我想选择在 col1 和 col2 上选择“n”不同的结果的第一行和最后一行之间的行(所有列)。

pkey | col1 | col2 | day | Other columns...
1 | a | 1 | 1 |
2 | b | 2 | 1 |
3 | b | 2 | 1 |
4 | c | 3 | 1 |
5 | c | 4 | 1 |
6 | a | 5 | 2 |
7 | a | 5 | 2 |
8 | b | 6 | 2 |
9 | c | 7 | 2 |
10 | c | 8 | 2 |

对于 n = 5,结果必须是:

pkey | col1 | col2 | day | Other columns...
1 | a | 1 | 1 |
2 | b | 2 | 1 |
3 | b | 2 | 1 |
4 | c | 3 | 1 |
5 | c | 4 | 1 |
6 | a | 5 | 2 |
7 | a | 5 | 2 |

enter image description here

我正在尝试使用 SELECT DISTINCT col1, col2 FROM sampletable 作为基础,但我无法访问其他列。这是如何实现的?

编辑:

更改描述以更清楚地说明我想要什么将第 6 行和第 7 行的 col2 从 1 更改为 5 以更接近我的真实数据。

最佳答案

SELECT a.*
FROM sampletable AS a
INNER JOIN (SELECT DISTINCT col1, col2 FROM sampletable LIMIT 5) AS b
ON a.col1 = b.col1 AND a.col2 = b.col2

关于mysql - 为前 n 个不同的元素选择行(两列或更多列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37259669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com