0

我正在尝试使用以下查询将数据从 libreoffice 库复制table1到:table2

INSERT INTO "table1" ("column1", "column2", ...)
SELECT "column3", "column4", ...
FROM "table2";

column4是一个VARCHAR与价值类似的'5/5/2015'。我的问题是那column2是一种DATE类型。column4那么我如何才能DATE注册column2呢?

4

1 回答 1

1

是的,您需要使用 CAST 命令。

看起来您正在将字符串“column4”转换为日期而不是列中的数据。尝试用这样的括号替换引号......

INSERT INTO table1 ([column1], [column2], ...)
SELECT [column3], CAST([column4] AS DATE), ...
FROM table2;

或像这样删除所有分隔符...

INSERT INTO table1 (column1, column2, ...)
SELECT column3, CAST(column4 AS DATE), ...
FROM table2;

如果列名包含空格/特殊字符或包含 SQL 关键字,则只需将它们括起来

于 2015-05-15T20:42:43.607 回答