gpt4 book ai didi

mysql - 仅左连接一列,该列不是键且基于条件

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

table_event(xman_id, event1,event2...) 具有 200,000 行

table_link(xman_id,a_id) 只有 10,000 行

我想要一个新表,其中所有 100,000 行都出现在表链接上,所有值都出现在表事件上,列名 a_id 仅出现在 table_link 上。希望能得到一个好的答案,非常感谢,这是我的代码。

INSERT INTO newtable
select table_event*, table_link.a_id
FROM table_event LEFT JOIN table_link.a_id
ON table_event.xman_id = table_link.xman_id;

新表设计为

xman_id,事件1,事件2...a_id

最佳答案

如果您只需要 table_link 中的数据,则应该使用 INNER JOIN

INSERT INTO newtable
SELECT table_event.*, table_link.a_id
FROM table_event
INNER JOIN table_link.a_id ON table_event.xman_id = table_link.xman_id;

这只会将数据插入 newtable 中,且数据仅在 table_eventtable_link 中匹配。

如果您希望table_link中的所有数据都到newtable,您应该告诉我们table_linktable_event之间的关系code> 是,一对多一对一

如果是一对多,您应该指定table_event中的哪一行应插入到newtable中。

如果是一对一,您可以尝试以下操作;

INSERT INTO newtable
SELECT table_event.*, table_link.a_id
FROM table_link
LEFT JOIN table_event.a_id ON table_event.xman_id = table_link.xman_id;

可能有空值插入到newtable中。

关于mysql - 仅左连接一列,该列不是键且基于条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38141581/

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