gpt4 book ai didi

mysql - 带插入的循环sql查询

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

我有这个选择查询:

SELECT * FROM `jos_users` 
left join jos_clientes on jos_users.id = jos_clientes.id_user
where jos_clientes.id_user is null
and email like '%novousuario%'';

此查询返回在 jos_clientes 表上没有行的所有 jos_users。

jos_clientes 架构是:

create table jos_clientes(
id int(11) not null auto_increment primary key,
id_user int(11) not null,
codigo_cpf_cnpj varchar(20) not null,
type varchar(4) not null
);

有什么方法可以在 jos_clientes 中为每一行插入一个新行吗?

foreach jos_users
INSERT INTO jos_clientes VALUES (null, jos_users.id_user, jos_users.username, IF(length(jos_users.username)>11,'cnpj','cpf'));

如何使用 mysql 上的 sql 执行此操作?

最佳答案

您可以使用INSERT INTO ... SELECT FROM 方法:

INSERT INTO jos_clientes (id_user, username, code)
SELECT jos_users.id_user, jos_users.username, IF(length(jos_users.username)>11,'cnpj','cpf') FROM jos_users

除非列完全匹配,否则您需要具体说明要填充的字段。

根据您的需要调整 SELECT 子语句,并确保它生成的结果类型可以直接插入到 jos_clientes 表中。

关于mysql - 带插入的循环sql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25815167/

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