重命名 SQL 中的列
Rename columns in SQL
我想(直接)用另一个 table 的 2 列的内容生成一个 table。如何更改列的名称(在新 table 中重命名)?
这是一个例子:
CREATE TABLE X AS
SELECT
Table1.name,
Table1.act
FROM Y
->我不想像原来的 table 那样命名列 "name" 和 "act" - 我想将 "name" 替换为 "customer" 和 "act" 替换为 "status"
您可以在查询中指定别名:
CREATE TABLE X AS
SELECT
Table1.name AS customer,
Table1.act AS status
FROM Y
或者,您可以在 table 名称后的括号中指定列定义:
CREATE TABLE X (customer VARCHAR(10), status VARCHAR(10)) AS
SELECT
Table1.name,
Table1.act
FROM Y
这样做:
CREATE TABLE X AS
SELECT
Table1.name as customer,
Table1.act as status
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`)
)";
}
我想(直接)用另一个 table 的 2 列的内容生成一个 table。如何更改列的名称(在新 table 中重命名)?
这是一个例子:
CREATE TABLE X AS
SELECT
Table1.name,
Table1.act
FROM Y
->我不想像原来的 table 那样命名列 "name" 和 "act" - 我想将 "name" 替换为 "customer" 和 "act" 替换为 "status"
您可以在查询中指定别名:
CREATE TABLE X AS
SELECT
Table1.name AS customer,
Table1.act AS status
FROM Y
或者,您可以在 table 名称后的括号中指定列定义:
CREATE TABLE X (customer VARCHAR(10), status VARCHAR(10)) AS
SELECT
Table1.name,
Table1.act
FROM Y
这样做:
CREATE TABLE X AS
SELECT
Table1.name as customer,
Table1.act as status
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`)
)";
}