我有两个相同的表,包括3个字段:ID,TID和ITEM .. ID充当主键,TID标识ITEM组。每个TID可以具有不同数量的ITEM。
我想将2个相同的表与
之类的条件进行比较按表1中的TID按照TID检查每个分组的ITEM到表2中的TID每个分组的ITEM
如果是table1。分组项目在表格2中与N一样多,它将通过查询INSERT SELECT
例如在屏幕截图中,C - F -A
在表2中有3个出现,因此它们将被插入到新表中。
可以使用mysql查询吗?
我已经尝试使用这个程序,将两个表填充到两个2d数组中,比较它们和简单的IF CLAUSE
,得到所需的结果..它运行良好..
但问题是,当我使用庞大的数据库时,需要花费很多时间才能完成..
当我比较第一个2d数组(table1有2k记录)和第二个数组(table2有870个记录)时,需要2个小时才能完成!!
这是实际的数据库
这个是我已经尝试过的,将上面的两个表填充到2d数组中..同时为这两个数组分配表记录,我还包括IF CLAUSE
来检查第一个2d数组的元素是否有在第2个2d数组中出现N,INSERT SELECT
查询将被执行..
上面第一个2d数组中的黄色阻塞节点col ,将插入到新表中,因为它在第二个2d数组中有3个出现,
数字3来自用户输入
但是因为我无论如何都在使用数据库对象,所以我花费了很多性能和时间,我正在使用 vb.net 2005
我相信有这个问题的替代方法..请大家告诉我方法怎么样?使用mysql查询或其他方法可以比我尝试过的更快?
对我表示最诚挚的问候,谢谢..
答案 0 :(得分:0)
使用linq它会完成所有的mysql quires。你可以在msdn上找到很好的文档。只需使用mysql服务器构建数据库并使用linq或实体,他们将为您执行所有命令。这样你就可以进行数据绑定并保存该信息并将其拉出来或者等等。如果你有更多问题,我在c#中有一份代码副本,使用表格查看我可以看到的联系信息
这是一个包含使用Linq的C#版本的GitHub链接 https://github.com/psychotiic/WebContactAppUsingLinq.cs
答案 1 :(得分:0)
你将能够使用linq和我刚提供的代码,即使它的C#很容易理解,如果没有,你可以在网上免费找到大量的C# - VB代码转换器。