【问题标题】:Create Table sql server best performance or best practice创建表sql server 最佳性能或最佳实践
【发布时间】:2017-02-17 14:14:21
【问题描述】:

我只是在询问性能上有什么差异,或者在 sql server 中创建表的最佳实践是什么。这适用于相当大的数据集。

SELECT <column names>
into <new_table_name>
from <table_name>

VS

CREATE TABLE <table_name> as
(
column_name1 datatype(),
column_name2 datatype()
)

INSERT INTO <table_name>(column_name1, column_name2)
SELECT <column_names> FROM <table_name>;

感谢您提供任何见解。

【问题讨论】:

  • 您多久创建一次新表?
  • 我从不select into,除非它是一个#temp 表。通过显式创建表,您可以更好地控制所有内容(数据类型、文件组、压缩、键、索引等)
  • 不经常。
  • 使用 SELECT INTO 你不能创建约束和主键
  • 您对此进行过研究吗?谷歌上有很多文章。

标签: sql sql-server create-table


【解决方案1】:

标记为已回答,感谢院长。在我的情况下,更好的选择是使用显式创建表。这让我可以更好地控制一切;数据类型、文件组、压缩、键、索引等。

【讨论】:

  • 同意它在您第一次创建表时提供​​控制权,但是,您也可以在稍后阶段添加大部分属性。所以 SELECT INTO 并不是那么邪恶。
猜你喜欢
  • 1970-01-01
  • 2015-08-21
  • 2010-11-17
  • 2011-04-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多