mysql—使用一些预定义的值将行插入sql表,以及从另一个表和连接字符串插入行

rqmkfv5c  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(177)

嗨,我正在尝试运行以下查询:

INSERT INTO Database2.Table2 ('1', getdate(), getdate(), '',ID,'','0','0','0','',ID,'','',getdate(),getdate(),'','0','"stackoverflow.com/"'+'ID','0','product','','0') 
SELECT ID
FROM Database1.Table1;

我正在插入一个新行,其中常量数据与另一个表的数据混合在一起,这个表是database1.table1“id”。当我尝试运行这段代码时,我不断地得到一个select语句错误。是我在监督什么,还是这句话全错了?谢谢您

oipij1gg

oipij1gg1#

将常量放入 SELECT 列表。

INSERT INTO Database2.Table2 
SELECT '1', getdate(), getdate(), '',ID,'','0','0','0','',ID,'','',getdate(),getdate(),
       '','0',CONCAT('"stackoverflow.com/"','ID'),'0','product','','0', ID
FROM Database1.Table1;

顺便说一句,我强烈建议你改掉使用 INSERT 不在值之前列出列名。根据表定义中列的特定顺序,很容易出错。
另外,mysql不使用 + 对于默认的字符串连接,它使用 CONCAT() 功能。

相关问题