通过合并/连接两个表名创建一个空表

时间:2015-03-25 04:43:54

标签: php mysql sql database mysqli

我想通过合并两个表名来创建一个表。

示例

表1 - 用户

表2 - 名称

所以,我必须创建一个表 userName

我如何实现这一结果?

SQL QUERY:CREATE TABLE?

我正在使用 php mysqli_query()来执行查询。如何连接两个表名以在mysql中创建一个新名称?

表格名称位于$table1$table2

连接 - $conn

如何指定表格的架构? 查询:CREATE TABLE ? (schema); 我想替换?使用通过合并两个表名获得的表名。即userName

1 个答案:

答案 0 :(得分:1)

你可以这样做:

$sql = "CREATE TABLE " .  $table1 . $table2  . " (ID INT NOT NULL)";

或类似的东西:

CREATE TABLE userName SELECT * FROM user, name;

您可以通过在CREATE TABLE语句末尾添加SELECT语句来创建另一个表:

CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl;

mysql> SELECT * FROM foo;
+---+
| n |
+---+
| 1 |
+---+

mysql> CREATE TABLE bar (m INT) SELECT n FROM foo;
Query OK, 1 row affected (0.02 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> SELECT * FROM bar;
+------+---+
| m    | n |
+------+---+
| NULL | 1 |
+------+---+
1 row in set (0.00 sec)

对于表foo中的每一行,在bar中插入一行,其中包含来自foo的值和新列的默认值。

您可以在以下网址阅读更多相关信息:

  

https://dev.mysql.com/doc/refman/5.0/en/create-table-select.html