在Excel中使用CONCATENATE
我目前正在合并两个数据库的工作过程中,我正在通过使用Excel生成我的INSERT语句。 我使用Excel的原因是因为我有超过1500多条logging,我不想写这么多的INSERT语句。 我会给你一些关于我的设置的背景:
正如你所看到的,我在上面的屏幕截图中设置了我的INSERT语句。 一旦完成,它会看起来像这样:
INSERT INTO "database name"("columns") VALUES("values")
在我上面的屏幕截图所描述的行下方,我有大约1500+行,有50列以上的地方。 正如你所看到的,我除了INSERT语句的值部分外,都已经设置好了。 为了设置这个,我使用CONCATENATE从我的第一行抓取所有的值来完成我的第一个插入语句。 这是我遇到一些麻烦的地方。
为了使我的INSERT语句正常工作,我需要使用以下格式的单元格值:
“00064”,“PPMeetME”,“testing”,“testing”等。 但是,如果你看上面的红色圈出来的截图,我不能把数据限制在这种格式。 我尝试了各种不同的angular色位置,我不确定它是否能够完成,但有什么方法可以设置我的CONCATENATE声明,使其看起来像我刚刚提到的?
(例如:“00064”,“PPMeetMe”,“00001”,“testing”而不是“00064,PPMeetMe,00001,testing”)
请让我知道,如果有什么不清楚,我会尝试进一步澄清。 任何帮助是极大的赞赏。
谢谢!
戴夫
有两种方法可以在Excel中执行串联。 您可以使用连接公式,也可以在要连接的每个值之间使用&
。 由于您需要在您的VALUE条款中包含双引号,因此可以使用formula =Char(34)
返回双引号。 你可以做:
=char(34) & A1 & char(34) & "," & char(34) & A2 & char(34) & "," & char(34) & A3 ... & char(34)
要么
=Concatenate(char(34), A1, Char(34), ",", char(34), A2, ...char(34))
这可能会变得有点难看,你可能要考虑把整个string","
放在一个单独的单元格中。 把它放在一个单元格(例如IV1)中: =char(34) & "," & char(34)
然后你的连接公式看起来像:
=char(34) & A1 & IV1 & A2 & IV1 & A3 & ... & char(34)
要么
=Concatenate(char(34), A1, IV1, A2, IV2, A3, IV3, A4.... ,char(34))