Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 创建表和将表创建为之间的差异_Mysql - Fatal编程技术网

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;