如何选择在特定字段中具有4位数字/字符的记录?

时间:2019-06-20 17:06:59

标签: sql sql-server

我需要选择特定字段中只有4位数字的所有记录。

我正在使用SQL Server。 WHERE条件正在查看包含数字的字符字段。我想选择该字段只有4个数字的所有记录。

SELECT * FROM Server.database.schema.table
WHERE ci_dnis [has 4 characters]

2 个答案:

答案 0 :(得分:2)

如果ci_dnis具有整数数据类型,则可以使用:

SELECT * FROM Server.database.schema.table WHERE ci_dnis BETWEEN 1000 AND 9999;

否则:

SELECT * FROM Server.database.schema.table WHERE LEN(ci_dnis) = 4;

答案 1 :(得分:1)

如果要四位数,则:

WHERE ci_dnis LIKE '[0-9][0-9][0-9][0-9]'

或者:

WHEN LEN(ci_dnis) = 4 AND           -- has a length of 4
     ci_dnis NOT LIKE '%[^0-9]%'    -- has no non-digits