【发布时间】:2013-02-11 23:20:41
【问题描述】:
所以我一直在做一些研究,我需要编写一个INSERT 语句来将唯一的客户端名称插入到我服务器上的表中。然而,数据库的默认标准已经有数千个客户端,在插入新客户端时,我们需要在尝试将其添加到系统之前检查它们是否已经存在。
我的问题是最好/最快的方法是什么?在客户表上运行一个简单的选择查询(按 ASC 排序),然后对结果进行二分搜索或其他操作,或者只执行类似于下面的 SQL 查询会更好吗?
IF NOT EXISTS (SELECT 1 FROM clients AS c WHERE c.clientname = ?)
BEGIN
INSERT INTO clients (clientname, address, ...)
VALUES (?, ?, ...)
END
这是一个缓慢的陈述吗?每次提交我可能需要运行数百次插入。
【问题讨论】:
标签: sql