类似运算符的基础知识

时间:2018-02-26 18:54:17

标签: sql sql-server

如何编写查询以检索正好五个字母的模式。 我有这个问题要回答: 列出名称由5个字母组成的所有客户名称。 我写的查询是这样的:

SELECT ContactName
From Customers
 WHERE ContactName LIKE '[A-Z][A-Z][A-Z][A-Z][A-Z]'

谢谢

4 个答案:

答案 0 :(得分:0)

SELECT ContactName
FROM Customers
WHERE LEN(ContactName) = 5

答案 1 :(得分:0)

SELECT ContactName
FROM Customers
WHERE LEN(ContactName) = 5 AND ContactName Not LIKE '%[0-9]%' AND ContactName Not LIKE '%[^a-zA-Z0-9]%'

我还没有测试过,但是它应该可以工作

我的方法是检查长度,该长度应等于5,并且不应包含任何数字或特殊字符。

我从 How to detect if a string contains at least a number?

以及从 How to detect if a string contains special characters? 并阅读

https://www.educative.io/edpresso/what-is-not-like-operator-in-sql

答案 2 :(得分:-1)

尝试此查询:

SELECT *
FROM table_name 
WHERE LEN(customer_name) = 5

答案 3 :(得分:-2)

SELECT ContactName
From Customers
WHERE ContactName LIKE '_%_%_%_%_%'

任何长度为5的字符