我目前正尝试使用CONCAT()
将2列合并为1。
我有
SELECT
ApplicationTitle,
ApplicationVersion,
CONCAT(ApplicationTitle,' ',' - ',' ',ApplicationVersion) as ApplicationName
FROM
<DataBaseName>
-- Hid DataBase name due to privacy concerns.
现在这个工作并给了我想要的结果,但我不仅要看结果,而且实际上将它作为带有这些值的新列插入到表中,这样我就可以删除ApplicationTitle
和{{ 1}}。推理是在导出信息时(我无法控制如何导出信息),它将ApplicationVersion
与ApplicationTitle
分开(澄清一下,它们是应用程序名称和应用程序版本,但我需要它使用 - divider进入1列,例如ApplicationTitle = SQL,ApplicationVersion = 4.0,我想要ApplicationName = SQL - 4.0)。我已经在线查看了但由于需要在ApplicationVersion
填充后需要删除ApplicationTitle
和ApplicationVersion
,因此无法找到适用于我当前情况的类似内容。
这样做的最佳方式是什么?我的想法是ApplicationName
命令与INSERT INTO
,但这对我来说似乎不起作用(我确定我错过了一些东西)。
答案 0 :(得分:0)
假设您有一个名为TableName
的表,而TableName
有一个列名ColumnName
,那么您可以通过以下查询在TableName
插入行:
INSERT INTO TableName
(ColumnName)
SELECT
CONCAT(ApplicationTitle, ' ', ' - ', ' ', ApplicationVersion)
FROM YourTableName
答案 1 :(得分:0)
这将创建一个新表并按照您喜欢的方式插入记录,但是如果您尝试使用相同的表名再次运行它,则会出现类似&#34;表已经存在的错误&#34;:
SELECT
ApplicationTitle,
ApplicationVersion,
ApplicationName = CONCAT(ApplicationTitle,' ',' - ',' ',ApplicationVersion)
INTO <NewTableName>
FROM <DataBaseName>