gpt4 book ai didi

mysql从两个相同的表中获取结果

转载 作者:行者123 更新时间:2023-11-30 00:46:22 25 4
gpt4 key购买 nike

我有两张相同的 table 。我想比较这两个表并从中得到结果。条件是:

  1. 表 1 中按 TID 分组的每条记录都将与表 2 中按每个 TID 分组的所有记录进行比较。

  2. 如果要在 TABLE2 中发现 TABLE1 中的每个分组记录(TABLE2 中也按每个 tid 分组的记录),则多达 N 个(N 是用户输入变量) ,那么该记录将被插入到新表中。

例如下面的ss,按TID 2分组的ITEM C-F-A在table2中出现了3次,因此它们将被插入到新表中:

enter image description here

我已经尝试为此编写代码并且它有效(vb.net),但是编译器需要花费荒谬的时间才能完成。主要原因是我正在处理一个巨大的数据库。

我在程序中完成的方法是将两个表填充到二维数组中。为数组赋值,同时使用 if 子句 比较两个元素。

下面是我创建的二维数组:

enter image description here

但这种方法确实很昂贵,上图中我的真实数据库是第一个 2d 数组有 2k 条记录,第二个 2d 数组有 800 条记录,当我尝试计算编译的估计时间时完成后,它显示了一个惊人的数字,大约 16 小时..天哪!!

所以我想知道,这个问题是否可以通过mysql查询来解决,或者其他比我所做的更有效的方法?

最佳答案

INSERT INTO tbl3 
SELECT tbl1.TID, tbl1.ITEM
FROM tbl1
JOIN tbl2 ON tbl2.TID = tbl1.TID AND tbl2.ITEM = tbl1.ITEM

这将为 tbl1 中的每条记录插入一条记录到 tbl3 中,该记录在 tbl2 中具有由 TID 和 ITEM 标识的对应记录。

这假设 TID/ITEM 是 tbl1 和 tbl2 中的唯一索引。

关于mysql从两个相同的表中获取结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21328569/

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