SQL Server(2005/2008)
以下每个陈述都有相同的结果.有谁知道一个人胜过另一个吗?
insert into SOMETABLE values ('FieldOneValue','FieldTwoValue',3,4.55,'10/10/2008 16:42:00.000') insert into SOMETABLE select 'FieldOneValue','FieldTwoValue',3,4.55,'10/10/2008 16:42:00.000' insert into SOMETALBE Select Field1 = 'FieldOneValue', Field2 = 'FieldTwoValue', Field3 = 3, Field4 = 4.55, Field5 = '10/10/2008 16:42:00.000'
当然假设数据类型恰当地匹配表...
我认为,基于这个问题,你就到了过早优化的程度.如果您只是插入1条记录并让Sql Server团队使其性能最佳,我会坚持使用标准的insert()值().
我刚试过这个.
两套硬件上有500万次迭代,一套是16GB RAM的服务器,另一套是1GB的笔记本.
结果:它们看起来是一样的.
这些查询计划是相同的,性能差异在统计上是无关紧要的.