Mysql 创建表和将表创建为之间的差异
两者之间有区别吗Mysql 创建表和将表创建为之间的差异,mysql,Mysql,两者之间有区别吗 create table table1 as select * from table 2; 及 关键字“as”在这种情况下起什么作用?当创建一个包含选定结果集的列和数据类型的表时,as关键字是可选的。如果使语句更易于阅读,则可以将其用作,但这不是必需的 我同意@spencer7593的评论,该关键词没有任何效果 如果参考语法文档,您可以发现可选语法。例如,记录语法: CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl; 语法文档
create table table1 as
select * from table 2;
及
关键字“as”在这种情况下起什么作用?当创建一个包含选定结果集的列和数据类型的表时,
as
关键字是可选的。如果使语句更易于阅读,则可以将其用作
,但这不是必需的
我同意@spencer7593的评论,该关键词没有任何效果
如果参考语法文档,您可以发现可选语法。例如,记录语法:
CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl;
语法文档中的方括号通常表示可选部分
值得一提的是,
AS
在SQL中的其他一些情况下是可选的,比如定义列别名或表别名。Nothing。可以选择重新强调该点(不仅仅是“可选”),包括或省略,因为关键字对语句没有影响。(但这并不适用于所有的“可选”关键字,有些关键字确实有效果。)+1。虽然我不认为“你可以像使用那样使用”这句话足够有力。我强烈建议将用作创建表
和列别名(但不用于表别名)。@GordonLinoff,你有什么功能上的理由来推荐这个建议吗?我也喜欢,但出于风格上的原因。@BillKarwin。不适用于创建表
;那将是一种风格。对于列别名,这是因为没有as
,很容易输入逗号并更改列列表。对于表别名,它是简化查询和Oracle在from
语句中不支持as
这一事实的结合。
CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl;