如何为每个组选择固定行数?
以下是 mysql 表中的一些示例数据
a b distance
15 44 250
94 31 250
30 41 250
6 1 250
95 18 250
72 84 500
14 23 500
55 24 500
95 8 500
59 25 500
40 73 500
65 85 500
32 50 500
31 39 500
22 25 500
37 11 750
98 39 750
15 57 750
9 22 750
14 44 750
69 22 750
62 50 750
89 35 750
67 65 750
74 37 750
52 36 750
66 53 750
82 74 1000
79 22 1000
98 41 1000
如何查询该表以便随机选择每个距离 2 行?
成功的查询将产生类似的结果
a b distance
30 41 250
95 18 250
59 25 500
65 85 500
15 57 750
89 35 750
79 22 1000
98 41 1000
Here is some example data in a mysql table
a b distance
15 44 250
94 31 250
30 41 250
6 1 250
95 18 250
72 84 500
14 23 500
55 24 500
95 8 500
59 25 500
40 73 500
65 85 500
32 50 500
31 39 500
22 25 500
37 11 750
98 39 750
15 57 750
9 22 750
14 44 750
69 22 750
62 50 750
89 35 750
67 65 750
74 37 750
52 36 750
66 53 750
82 74 1000
79 22 1000
98 41 1000
How do I query this table such that I get 2 rows per distance selected at random?
A successful query will produce something like
a b distance
30 41 250
95 18 250
59 25 500
65 85 500
15 57 750
89 35 750
79 22 1000
98 41 1000
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用:
Use:
一种方法是使用 union。像这样:
我可以想出一种方法,使用distinct =/通过一个查询获取其中一个,但就像我说的那样,这只会给你带来一个。
One way would be to use union. Like so:
I can think of a way of getting one of each with one query using distinct =/, but like I said that would only bring you one.
我想知道这行得通吗?
编辑:不幸的是没有。子查询中不支持 LIMIT。
I wonder if this will work?
EDIT: unfortunately not. LIMIT is not supported in a subquery.