我正在尝试将所有数据插入表中,但只更改日期列
到目前为止,我有类似
的内容INSERT INTO MyTable (SELECT * FROM MyTable...)
我想要做的是将其中一列设置为常量值(例如今天的日期而不是选择的日期)
有没有人知道这样做的简单方法
答案 0 :(得分:4)
INSERT INTO MyTable (col1, col2, col3) (SELECT col1, col2, 'constant' FROM MyTable...)
答案 1 :(得分:1)
是的,你可以这样做:
INSERT INTO MyTable (SELECT MyTable.Id, MyTable.xxx, CONSTANT_VALUE FROM MyTable ...)
答案 2 :(得分:1)
我只想做ffg
INSERT INTO MyTable
Select col1, col2,....., THE_CONSTANT_VALUE, SOME_OTHER_VALUE from MyTable
答案 3 :(得分:1)
如果指定要插入的列,则可以执行此操作,如下所示:
INSERT INTO MyTable (Col1, Col2, DateVal, StaticValue)
(SELECT Col1, Col2, getdate() As DateVal, 'test' As StaticValue FROM MyTable2)
这将从MyTable2获取Col1和Col2,但使用getdate()函数获取DateVal列的当前日期,并且插入的每一行都将对StaticValue列进行“test”。
这有帮助吗?
答案 4 :(得分:0)
要将Table中每行的所有日期字段更新为当前日期,请执行以下操作:
UPDATE MyTable SET thedatecolumn = GETDATE()
如果要从Table1插入到Table2,它们具有相同的结构:
INSERT INTO Table2 (column1, column2, column3, fixedcolumn) (SELECT column1, column2, 'textvalue' AS staticcolumn, GETDATE() AS functioncolumn FROM Table1)