在创建新表格时保持源数据格式

时间:2016-10-13 09:45:30

标签: mysql sql

当我们从不同表中获取列以创建新表时,如何从平板电脑中保留原始数据格式?我有两个表,并希望根据每个表中的一些列创建一个新表:但是,当我执行以下操作时(在[]中,table1中一列(日期)的日期格式会自动修改(到varchar)原始数据格式):

CREATE TABLE 3 AS
SELECT
y1.ItemID[int],
y1.order[int],
y1.name[varchar],
y1.date[date],
y2.product_id[int],
y2.name[varchar],
y2.Kategorie [number],
FROM Table1 y1
LEFT JOIN Table2 y2
ON y1.ItemID = y2.product_id;

出了什么问题?

1 个答案:

答案 0 :(得分:0)

你应该能够明确地施放:

CREATE TABLE 3 AS
SELECT
y1.ItemID,
y1.order,
y1.name,
Cast(y1.date as date) date,
y2.product_id,
y2.name,
y2.Kategorie 
FROM Table1 y1
LEFT JOIN Table2 y2
ON y1.ItemID = y2.product_id;

并且您还可以在create上设置数据类型,如mysql在线手册示例所示:

CREATE TABLE foo (a TINYINT NOT NULL) SELECT b+1 AS a FROM bar;