我正在编写查询以基于物化视图创建表。
之类的东西" 创建tableView AS SELECT table1.column1, table2.column4, table3.column7 从 ... "
如何更改此查询以使table1.column1成为此表的主键?
答案 0 :(得分:1)
你可以用
做到这一点CREATE TABLE tableView (PRIMARY KEY (column1))
SELECT table1.column1, table2.column4, table3.column7 FROM ...
请参阅CREATE TABLE ... SELECT Syntax
CREATE TABLE ... SELECT不会自动为其创建任何索引 您。这样做是为了使声明具有灵活性 可能。 如果要在创建的表中包含索引,则应该 在SELECT语句之前指定这些:
的MySQL> CREATE TABLE栏(UNIQUE(n))SELECT n FROM foo;
我强调,请看原始表没有密钥的Demo。