sql - 从选择命令创建一个新表

标签 sql mysql

假设我有这样的命令:

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)

最佳答案

是的,CREATE TABLE语法最后支持一个选项 SELECT 语句,它可以像这样简单:

 CREATE TABLE foo
 SELECT bar FROM xyz;

关于sql - 从选择命令创建一个新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4179120/

相关文章:

mysql - 删除后保持 MySQL 值按顺序排列

Sql 通知支持的事务隔离级别

sql - 需要的结果集如下表所示

mysql - 可重复读取和可序列化的 MySQL InnoDB 实现之间的实际区别是什么

php - 在 codeigniter 中多次返回相同的结果

java - 如何在不同的jsp网站中插入?

php - 在 MySQL 中更新重复记录(仅限第一个 mtch)

sql - apache derby:为列 “GENERATED BY DEFAULT AS IDENTITY”指定ID

sql - 自动上传文本文件到 MS SQL 服务器

sql - 需要帮助将条件 COUNT() 添加到已使用 JOIN 的查询