假设我有一个这样的命令:
select name, age, haircolor from people where shoesize > 10;有没有一种方法可以根据该命令返回的内容创建一个新表?我想将该命令的输出通过管道传输到一个新的表中。
含义:
mysql> show tables;
+-----------------+
| Tables_in_db1 |
+-----------------+
| people |
+-----------------+
1 rows in set (0.00 sec)
mysql> CREATE TABLE FROM "select name, age, haircolor from people where shoesize > 10;";
..?
mysql> show tables;
+-----------------+
| Tables_in_db1 |
+-----------------+
| people |
| NEW TABLE |
+-----------------+
1 rows in set (0.00 sec)发布于 2010-11-15 03:10:48
是的,CREATE TABLE语法支持结尾的option SELECT语句,它可以像这样简单:
CREATE TABLE foo
SELECT bar FROM xyz;发布于 2010-11-15 03:14:44
您可以使用MySQL's create table...select syntax
通过在create table语句的末尾添加SELECT语句,可以从一个表创建另一个表:
CREATE TABLE new_tbl SELECT * FROM orig_tbl;发布于 2010-11-15 03:10:21
当然可以,例如:
CREATE TABLE your_table AS SELECT name, age -- ...您可以查看有关语法here的更多信息。
https://stackoverflow.com/questions/4179120
复制相似问题