在Mysql中从现有表的选定列创建一个具有相同结构的表
我是一个新手,我正在使用mysql。我想从现有表客户中创建一个表产品,但我只想在新表中创建客户表中选定的列,并且该表的结构也相同。例如,在customer表中有一个名为DATE的列,该列的默认值为当前时间戳,并且在更新当前时间戳时为。所以我希望这个结构也在新表中创建 我看了其他答案,但它们没有复制结构。请帮我使用这个在Mysql中从现有表的选定列创建一个具有相同结构的表,mysql,sql,Mysql,Sql,我是一个新手,我正在使用mysql。我想从现有表客户中创建一个表产品,但我只想在新表中创建客户表中选定的列,并且该表的结构也相同。例如,在customer表中有一个名为DATE的列,该列的默认值为当前时间戳,并且在更新当前时间戳时为。所以我希望这个结构也在新表中创建 我看了其他答案,但它们没有复制结构。请帮我使用这个 CREATE TABLE NEW-TAB SELECT NAME,DATE FROM OLD-TAB; 请根据您的要求更改列/表名称使用此 CREATE TABLE NEW-TA
CREATE TABLE NEW-TAB SELECT NAME,DATE FROM OLD-TAB;
请根据您的要求更改列/表名称使用此
CREATE TABLE NEW-TAB SELECT NAME,DATE FROM OLD-TAB;
请根据您的要求更改列/表名称尝试以下操作:
create table product(DATE CURRENT_TIMESTAMP,ON UPDATE CURRENT TIMESTAMP );
INSERT INTO product (DATE,ON) SELECT DATE,ON FROM customer ;
或
试试这个:
create table product(DATE CURRENT_TIMESTAMP,ON UPDATE CURRENT TIMESTAMP );
INSERT INTO product (DATE,ON) SELECT DATE,ON FROM customer ;
或
这是你能做的
customer
表如下所示
CREATE TABLE customer
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(5),
created DATETIME,
modified TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
other_column INT
);
您希望创建一个新表customer\u new
,但不包含other\u列
CREATE TABLE customer_new LIKE customer;
ALTER TABLE customer_new DROP COLUMN other_column;
INSERT INTO customer_new (id, name, created, modified)
SELECT id, name, created, modified
FROM customer;
这里是演示这里是你可以做的
customer
表如下所示
CREATE TABLE customer
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(5),
created DATETIME,
modified TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
other_column INT
);
您希望创建一个新表customer\u new
,但不包含other\u列
CREATE TABLE customer_new LIKE customer;
ALTER TABLE customer_new DROP COLUMN other_column;
INSERT INTO customer_new (id, name, created, modified)
SELECT id, name, created, modified
FROM customer;
这里是演示它应该是。你为什么不试着让我们知道呢。很遗憾这不起作用,兄弟:(.它没有复制结构我刚才在mysql/mariadb上试过,没有任何错误我不是说我有错误。我是说它没有复制结构。它只是复制了表名,但没有复制默认值etcdef值不能复制,你必须单独修改列。为什么不呢你试着让我们知道。遗憾的是这不起作用,兄弟:(.它没有复制结构我刚才在mysql/mariadb上试过,没有任何错误我不是说我有错误。我是说它没有复制结构。它只是复制了表名,但没有复制默认值etcdef值无法复制,就我所知,您必须单独更改列类型无法复制,您可以使用上述查询将数据从一个表复制到另一个表。据我所知,数据类型无法复制,您可以使用上述查询将数据从一个表复制到另一个表。+1是的,先生,这对我很有帮助,毫无疑问。。感谢您花费宝贵的时间。非常感谢您的帮助:)+是的,先生,这对我很有帮助,这是毫无疑问的。谢谢你花了宝贵的时间。非常感谢你的帮助:)