SQL在查询SSMS期间处理字符串中的特殊字符

时间:2020-04-22 10:01:32

标签: sql sql-server

我有一个数据库客户。列如下

ID    CompanyName
1      Bon app'
2      %Benguir$
3      ABB?

DELETE FROM Customers WHERE CompanyName = 'Bon app\''

我想说的是删除CompanyName为Bon app'的记录。请注意最后的'。 我希望对%Benguir$ABB?做同样的事情。基本上我想知道如何在使用查询时在SQL中处理带有特殊字符的字符串

1 个答案:

答案 0 :(得分:0)

如果我理解正确,那么您应该只对 Bon app'的第一条记录有疑问。请从以下脚本中检查如何选择所有3条记录。这应该可以帮助您删除特定记录。

DEMO HERE

WITH your_table(ID,CompanyName)
AS
(
    SELECT 1,'Bon app''' UNION ALL
    SELECT 2,'%Benguir$' UNION ALL
    SELECT 3,'ABB?'
)

SELECT * FROM your_table WHERE CompanyName = 'Bon app'''
UNION ALL
SELECT * FROM your_table WHERE CompanyName = '%Benguir$'
UNION ALL
SELECT * FROM your_table WHERE CompanyName = 'ABB?'

我只是演示选择不同的Word。您可以在删除脚本中使用上述条件和逻辑。