SQL替换并插入到

SQL替换并插入到,sql,sql-server,tsql,Sql,Sql Server,Tsql,我在SQL Server中有这个表“NamesTable” ID NameEnglish NameFrench ----------------------------------- 1 Loyalty Apple Null 2 Home Watermelon Null 3 Company Banana Null 我想在第二列中插入并替换相应的名称,如下所示 ID NameEnglish NameF

我在SQL Server中有这个表“NamesTable”

ID      NameEnglish      NameFrench
-----------------------------------
1       Loyalty Apple     Null
2       Home Watermelon   Null
3       Company Banana    Null
我想在第二列中插入并替换相应的名称,如下所示

ID      NameEnglish       NameFrench 
-----------------------------------------
1       Loyalty Apple     Loyalty Pomme
2       Home Watermelon   Home Melon 
3       Company Banana    Company Banane
这是我的疑问:

INSERT INTO NamesTable (NameFrench)
VALUES ('Frenchreplace') 

SELECT 
    [ID], 
    NameEnglish AS [Frenchreplace], 
    REPLACE(REPLACE(REPLACE(REPLACE (NameEnglish, 'Apple', 'Pomme'),
                     'Watermelon', 'Melon'),
                     'Banana', 'Banane') AS [Frenchreplace] 
FROM 
    NamesTable

查询将运行并替换所选单词,但不会插入到现有表中。我做错了什么?

不知道您的
INSERT
查询的目标是什么。但你不需要这样

您需要一个
更新
查询<代码>选择仅从表中检索,不修改或更改表

选择
查询更改为
更新
查询




如果您试图修改现有数据,您需要
更新
-一个
选择
查询不会修改数据。@DaleK请查看我的更新感谢我的评论仍然有效-您需要一条更新语句。Insert用于插入新行(而不是列-该列从第一次插入时就存在),update用于修改现有行。您的问题非常令人困惑。看起来您想基于列
NameEnglish
更新列
nameefrench
。但是对于
ID
2
Orange
是如何变成
西瓜的呢?@对不起,是的,这里没有橘子。我确实编辑了,谢谢
UPDATE N
SET    NameFrench  = REPLACE( REPLACE( REPLACE (
                                                NameEnglish, 'Apple', 'Pomme'),
                                       'Watermelon', 'Melon'),
                             'Banana', 'Banane')
FROM   NamesTable AS N