sql - 如何在 SQL Server 中查找列是否包含 '%'

标签 sql sql-server tsql

我创建了一个如下表:-

CREATE TABLE Customer(CustomerID integer PRIMARY KEY, Name text);

/* Added few records in this table */
INSERT INTO Customer VALUES(1,'Tom');
INSERT INTO Customer VALUES(2,'Lucy');
INSERT INTO Customer VALUES(3,'Jenny%123');

现在,我必须找到其中包含 % 的名称。

我应该得到 'Jenny%123'

我使用的查询是

SELECT * FROM Customer where Name LIKE '%%%';

但我得到了所有的行。我只想要其中包含 % 的名称。

最佳答案

您可以使用 CHARINDEX :

select *
from Customer
where charindex ('%', Name) <> 0

当然,以上是不可分割的,但更容易理解恕我直言。

关于sql - 如何在 SQL Server 中查找列是否包含 '%',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50667968/

相关文章:

sql - Teradata 错误 3782 联接表的搜索条件中的列引用不正确

sql-server - SQL Server Management Studio 和 Express 版本有什么区别?

sql-server - TSQL 事务在语句后检查 @@ERROR 和 @@ROWCOUNT

sql - 如何将多个pdf文件保存到sql server中的一个文件夹中

sql - 工资高于部门平均水平的员工 - 优化

sql - 使用 ORM 进行大容量数据库更新

mysql - SQL引用Select语句中的大方程

sql - IDS 对单用户应用程序来说是一种过度杀戮吗?

SQL 案例上限奇怪的结果

mysql - sql server中合并行的问题