我有两个相同的表,它由3个字段组成:ID,TID和ITEM。 ID作为主键,TID标识ITEM组。每个TID可以有不同数量的ITEM。vb.net比较两个表,将结果插入新表
我想的2个相同的表与每一个状态分组由ITEM TID表1通过TID表2中比较喜欢
检查,以每个分组ITEM
如果表1。分组项目存在多达N的表2,将通过查询
INSERT SELECT
例如在屏幕截图被插入到新表,
C - F -A
具有表2 3个OCCURENCES,从而它们将被插入到新表..
可以使用mysql查询来完成吗?
我已经尝试过这种使用程序通过填充两个表分为两个二维数组,比较它们与简单IF CLAUSE
,得到了理想的结果..它运作良好..
但问题是,当我使用巨大的数据库,它需要荒谬的时间来完成..
当我比较第一个2D数组(table1与2k记录)和第二个数组(table2与870记录),它需要2个小时才能完成!
这是实际的数据库
而这一次是我已经尝试过,填充双表格上方成二维数组..同时与表中的记录分配二维数组,我还包括所述IF CLAUSE
,以检查是否第一2D阵列的元件具有第二二维数组ñOCCURENCES,所述INSERT SELECT
查询将被执行..
黄色在上述第一2D阵列阻挡节点COL,将Ë插入新的表,因为它具有在第二2D阵列3个OCCURENCES,
数3从用户输入
来源,但因为我使用数据库对象无论如何,它花费我一个昂贵的性能和时间,我也使用vb.net 2005
我相信有这个问题的替代方法..你能告诉我如何方法?使用MySQL查询或其他方法可以执行比我试过的更快?
最好的问候,谢谢..
thx为答案先生。我忘了提及,但是我对linq并不擅长,因为它对我来说是新的,甚至现在我正在使用vs 2005。所以,请你在LINQ旁边建议我另一个解决方案吗? thxü –