gpt4 book ai didi

sql - 在 SQL 中的另一个循环中创建一个循环?

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

我正在使用 PostGreSQL 1.18.1 版,我遇到了一个问题:

我想插入很多信息并想让它像一个循环一样工作,但根据我的要求,我需要两个循环(一个在另一个循环中)

我的请求是这样的:

INSERT INTO table_hour (annee , mois , id_operateur , nombre_heure_sup , nombre_jour_recup )
SELECT 2017 , 2 , x.id , 0 , 0
FROM generate_series(1,6) AS x(id);

INSERT INTO table_hour (annee , mois , id_operateur , nombre_heure_sup , nombre_jour_recup )
SELECT 2017 , 3 , x.id , 0 , 0
FROM generate_series(1,6) AS x(id);

...

第一个循环:id_operateur 从 1 到 6。

第二个循环:mois 从 2 到 1000。

我想知道如何使它成为另一个(它的值 mois 第二个循环将如何)

最佳答案

使用交叉连接:

INSERT INTO table_hour(annee , mois , id_operateur , nombre_heure_sup , nombre_jour_recup )
SELECT 2017 , y.id , x.id , 0 , 0
FROM generate_series(1,6) AS x(id)
CROSS JOIN generate_series(2,1000) AS y(id);

关于sql - 在 SQL 中的另一个循环中创建一个循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44648015/

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