Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 将数据移动到同一表中的另一列(MS SQL)_Sql Server - Fatal编程技术网

Sql server 将数据移动到同一表中的另一列(MS SQL)

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

如何将一个句子移至另一列

我想将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                                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)