Sql server 如何更新表中另一列的所有值都以“开始”开头的列;“到”吗;?

Sql server 如何更新表中另一列的所有值都以“开始”开头的列;“到”吗;?,sql-server,Sql Server,我想做一个更新,但要限制它。如何更新表格短语,并将礼貌字段的值设置为1,以开头的列到 注意“to”后面有一个空格 在更新礼貌列之前,可以使用SQL Server函数检查英语列的前三个字符 UPDATE phrase SET politeness = 1 WHERE SUBSTRING(english, 1, 2) = 'to ' 对于所有其他使用LIKE的答案,使用LIKE可能更可取。因为我们是从english列的开头进行匹配的,所以可以使用索引。但是,使用SUBSTRING()应排除任何使用

我想做一个
更新
,但要限制它。如何
更新
表格
短语
,并将
礼貌
字段的值设置为1,以
开头的列

注意“to”后面有一个空格

在更新
礼貌
列之前,可以使用SQL Server函数检查
英语
列的前三个字符

UPDATE phrase
SET politeness = 1
WHERE SUBSTRING(english, 1, 2) = 'to '
对于所有其他使用
LIKE
的答案,使用
LIKE
可能更可取。因为我们是从
english
列的开头进行匹配的,所以可以使用索引。但是,使用
SUBSTRING()
应排除任何使用索引的机会。因此,我可能会选择其他答案并这样做:

UPDATE phrase
SET politeness = 1
WHERE english LIKE 'to %'
UPDATE phrase
SET politeness = 1
WHERE english LIKE 'to %'
在更新
礼貌
列之前,可以使用SQL Server函数检查
英语
列的前三个字符

UPDATE phrase
SET politeness = 1
WHERE SUBSTRING(english, 1, 2) = 'to '
对于所有其他使用
LIKE
的答案,使用
LIKE
可能更可取。因为我们是从
english
列的开头进行匹配的,所以可以使用索引。但是,使用
SUBSTRING()
应排除任何使用索引的机会。因此,我可能会选择其他答案并这样做:

UPDATE phrase
SET politeness = 1
WHERE english LIKE 'to %'
UPDATE phrase
SET politeness = 1
WHERE english LIKE 'to %'
首先尝试一个:

select * from politeness where english like 'to %'
要确保要修改的记录

如果结果是你想要的,我想(如果我理解你的问题)

希望这有帮助

首先尝试一个:

select * from politeness where english like 'to %'
要确保要修改的记录

如果结果是你想要的,我想(如果我理解你的问题)

希望这有帮助

请试试这个

UPDATE phrase
SET politeness = 1
WHERE english like 'to %'
请试试这个

UPDATE phrase
SET politeness = 1
WHERE english like 'to %'

您的条件是匹配以“to”开头的单词,然后是一个空格

对于字符串匹配,可以使用SQL的
LIKE
运算符。它的功能是匹配条件指定的字符串

LIKE 'to %'
它意味着所有以“to”开头的字符串以及其后的一个空格。 %为后面的任何字符命名

查询:


您的条件是匹配以“to”开头的单词,然后是一个空格

对于字符串匹配,可以使用SQL的
LIKE
运算符。它的功能是匹配条件指定的字符串

LIKE 'to %'
它意味着所有以“to”开头的字符串以及其后的一个空格。 %为后面的任何字符命名

查询: