一次向一个表中插入多条数据,SQL应该如何样写效率最好

 我来答
SF000B5
2013-10-24 · 超过70用户采纳过TA的回答
知道答主
回答量:115
采纳率:0%
帮助的人:157万
展开全部
------解决方案--------------------------------------------------------你那些 SELECT xx,xx,xx,xx,xx 是从几个表里查出来?如果是一个表的话直接用一个SELECT把所有的查出来,一次性插进去,就不需要用UNION ALL了,如果从不同的表的话可以那样做.
------解决方案-------------------------------------------------------- 分开写快
但可放在一起执行.
------解决方案--------------------------------------------------------C# code Sqlconnection connection=new SqlConnection(); string sql="INSERT Biao SELECT xx,xx,xx,xx,xx UNION ALL SELECT xx,xx,xx,xx,xx UNION ALL SELECT xx,xx,xx,xx,xx UNION ALL SELECT xx,xx,xx,xx,xx"; SqlComand command=new SqlCommand(sql,connection); connection.Open(); int count=command.ExecuteNonQuery(); connection.Close();
------解决方案--------------------------------------------------------探讨分开写快
但可放在一起执行.
------解决方案--------------------------------------------------------都差不对!!
------解决方案--------------------------------------------------------存储过程效率高
------解决方案--------------------------------------------------------都差不多
------解决方案--------------------------------------------------------批量的搞法,可以这样,一次insert一条,用 insert into table(...) values(...) 的方法,可以积攒到 1000 条左右的时候再去提交,这样比插入一条提交一条的速度要快一些,但不是很明显。
------解决方案--------------------------------------------------------不是太影响速度,随意吧
------解决方案--------------------------------------------------------探讨分开写快
但可放在一起执行.
------解决方案--------------------------------------------------------探讨分开写快
但可放在一起执行.
------解决方案--------------------------------------------------------SQL code declare @x int set @x=0; while (@x
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式