【发布时间】:2011-03-09 05:58:27
【问题描述】:
关于如何对以下查询进行 t-sql 编程的一个问题:
表 1 我在一个有两列的表中插入了 400.000 个手机号码。要插入的号码和身份 ID。
表 2 第二个表称为 SendList。它是一个包含 3 列、一个身份 ID、一个列表 ID 和一个电话号码 ID 的列表。
表 3 称为 ListInfo 并包含 PK 列表 ID。以及有关列表的信息。
我的问题是我应该如何使用 T-sql:
将带有phonenumbers的大列表插入到表1中,从phonenum的插入中插入生成的id。在表 1 中,到表 2。以优化的方式与。不能花很长时间,这是我的问题。
如果有人能在这方面指导我,我们将不胜感激。
谢谢
塞巴斯蒂安
【问题讨论】:
-
您是从文件中加载这些值吗?如果是这样,您使用什么来导入文件?
-
另外,您确定需要表 1 中的标识列吗?如果电话号码是唯一的,则该列可能是更合适的键。否则,标识列可能会给您一种独特的错误感觉。
-
不同意@jmgant,电话号码从来都不是唯一的。多个人可以拥有相同的电话号码,并且当人们关闭它们时它们会被重复使用。永远不要依赖电话号码是唯一的。
-
@HLGEM,你是对的,因此第二句中的“如果”。如果不能保证它们是唯一的,那么表中可能应该不止这两列,这样您就可以拥有某种真正的关系完整性。
-
使用业务数据作为主键是淫秽的。甚至考虑过这样做的人都不应该再靠近计算机。
标签: sql tsql database-design optimization