Sql server 将数据移动到同一表中的另一列(MS SQL)
如何将一个句子移至另一列 我想将ET**从fælge移动到ET列。 目前我得到的结果如下:Sql server 将数据移动到同一表中的另一列(MS SQL),sql-server,Sql Server,如何将一个句子移至另一列 我想将ET**从fælge移动到ET列。 目前我得到的结果如下: Fælge ET 6 x 15 ET45 7 x 16 ET38 6x14 ET35|8.5x20 ET36|10x20 ET30 但我希望得到如下结果: Fælge ET 6x15
Fælge ET
6 x 15 ET45
7 x 16 ET38
6x14 ET35|8.5x20 ET36|10x20 ET30
但我希望得到如下结果:
Fælge ET
6x15 45
7x16 38
6x14|8.5x20|10x20 35|36|30
我一直在使用此查询将一个字符替换为另一个字符,但我不确定如何使用通配符将一个句子移动到另一列
我一直在使用下面的脚本来更改fælge列中的一些字母:
use [OminiData]
UPDATE [dbo].[test]
SET [Fælge] = REPLACE([Fælge],'*','x')
WHERE [Fælge] LIKE '%*%'
这是我的桌子:`
您可以通过字符串操作来完成此操作
declare @faelge varchar(25)
set @faelge = '7 x 16 ET38'
select replace(left(@faelge, patindex('%ET%', @faelge) - 1), ' ', '') as 'Faelge',
right(@faelge, len(@faelge) - patindex('%ET%', @faelge) - 1) as 'ET'
我使用单个变量作为示例,您可以使用表中的列。请尝试下面的内容。它将在“ET”一词之后和之前细分两列
SELECT LEFT(Fælge,LEN(Fælge)-CHARINDEX('ET',Fælge)) AS Fælge
,RIGHT(Fælge,LEN(Fælge)-CHARINDEX('ET',Fælge)) AS ET from [dbo].[Test]
我想出了一个方法,就是用
UPDATE [dbo].[test]
SET [Fælge] = REPLACE([Fælge],'6x15','')
然后将其导出并导入到正确的列中,但需要一段时间才能获得所需的数据,但速度仍然比手动编辑64k记录快您是否尝试过任何操作,但发现它不起作用?实际的表是什么?你想问什么问题?你能提供更多信息吗?我的实际表格是[dbo].[test]我不确定你对我试图操纵的表的意思,但我一直在使用我发布的查询来更改fælge列中的某个字母,你可以在
set@faelge='7x16et38'
像set@faelge=try-ETthis'
下键入difrent内容,然后它会在fælge下显示try
并且这个
在ET下,它不是我表中的一些数据,它没有添加到我的表中,将E之后的所有内容移到ET列,因此结果看起来像6x15 E
T45 | 7x16ET40
我用一张图片更新了它,你可以看到它只是改变了问题。根据您的信息,我假设第一根立柱的长度为(6X15)