仅在 Transact-SQL 中检查字符串是否由字母或数字组成

Lan*_*hou 2 sql t-sql sql-server

如何在 Transact-SQL 中检查字符串是否仅由字母或数字组成?

这里的字符串具有数据类型nchar,“字母”特指拉丁字符。数据库环境为Microsoft SQL Server 2014。

所需结果的示例:

C172E returns True
412?A returns False  //'?' is neither a letter nor a number
Run Code Online (Sandbox Code Playgroud)

我做了一些搜索,但只找到了内置ISNUMERIC()函数,该函数仅适用于数字。

有针对此问题的 Transact-SQL 解决方案吗?

小智 5

请参阅有关仅获取包含字母数字数据的字段的类似问题

您可以执行以下操作:

FIELD NOT LIKE '%[^a-zA-Z0-9]%'