我想(直接)使用另一个表的2列中的内容生成表。如何更改列的名称(在新表中重命名)?重命名SQL中的列
Here's一个例子:
CREATE TABLE X AS
SELECT
Table1.name,
Table1.act
FROM Y
- >我不希望命名列“名”和“行为”作为原始表 - 我想有“名”所取代“客户”和“行为”的“状态”
我想(直接)使用另一个表的2列中的内容生成表。如何更改列的名称(在新表中重命名)?重命名SQL中的列
Here's一个例子:
CREATE TABLE X AS
SELECT
Table1.name,
Table1.act
FROM Y
- >我不希望命名列“名”和“行为”作为原始表 - 我想有“名”所取代“客户”和“行为”的“状态”
做这样的:
CREATE TABLE X AS
SELECT
Table1.name as customer,
Table1.act as status
FROM Y
你可以只在查询中指定名称的别名替换:
CREATE TABLE X AS
SELECT
Table1.name AS customer,
Table1.act AS status
FROM Y
或者,你可以在表名后指定括号中的列定义:
CREATE TABLE X (customer VARCHAR(10), status VARCHAR(10)) AS
SELECT
Table1.name,
Table1.act
FROM Y
您将需要使用一个while循环来做到这一点:
$my_query = "SELECT * FROM tj_ethnicity FROM Table_X";
while($row = mysql_fetch_assoc($my_query))
{
$new_query = "CREATE TABLE `."$row['customer']".` (
`customerid` int(11) NOT NULL AUTO_INCREMENT,
`status` varchar(50) DEFAULT ."$row['status']".,
`created` datetime NOT NULL,
PRIMARY KEY (`customerid`)
)";
}
'...选择Table1.Name作为客户,表1。作为状态......“ – Siyual