gpt4 book ai didi

mysql - 如何从 postgres 中的查询生成子集?

转载 作者:行者123 更新时间:2023-11-29 13:29:47 25 4
gpt4 key购买 nike

我需要给定查询的元组子集。例如,如果我需要查找所有年龄超过 25 岁的员工的列表,并将其限制为最多 5 个。如何为其生成各种子集?

# select * from employee where age > 25 ;  
will list all the employee whose age is > 25

tupleid = { 1,2,3,4,5,6,7,8,9 }

#select * from employee where age > 25 limit 5 ;
will list any 5 tuples from it.

tupleid on first time execution = {1,2,3,4,5}

但是我需要对我得到的 5 组元组进行某种排列{1,2,3,4,5} {2,3,4,5,6} .. 等等 ..

有没有办法在 sql/postgres 中生成相同的内容?

编辑1:因为这个问题一开始似乎很清楚。

我添加了一个示例表和我正在谈论的 sql 查询。 sqlfiddle.com/#!2/69a0c/2如果您看到第二个查询的输出,我只能看到 [1,2,3,4,5] 元组就是答案。我想要 [1,2,3,4,5] 、 [1,2,3,4,6] 、 [1,2,3,4,7] 等独特组合作为答案。

最佳答案

要获得“排列类型”,请使用 OFFSET:

SELECT *
FROM employee
WHERE age > 25
ORDER BY employee_id -- or whatever
OFFSET 1
LIMIT 5;

要获取随机样本:

SELECT *
FROM employee
WHERE age > 25
ORDER BY random()
LIMIT 5;

Postgres。在 MySQL 中,您可以使用 RAND() 代替。

关于mysql - 如何从 postgres 中的查询生成子集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19643953/

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