Check if starting characters of a string are alphabetical in T-SQL(检查字符串的起始字符是否在 T-SQL 中按字母顺序排列)
问题描述
是否可以仅使用 TSQL 来检查 varchar 字段的前两个字符是否按字母顺序排列?
Is it possible, just using TSQL, to check if the first two characters of a varchar field are alphabetical?
我需要从 my_table 中只选择 my_field 以两个字母字符开头的行.我怎样才能做到这一点?
I need to select from my_table only the rows having my_field beginning with two alphabetical chars. How can I achieve this?
是否可以使用正则表达式?
Is it possible to use a regex?
推荐答案
你不需要使用正则表达式,LIKE 就足够了:
You don't need to use regex, LIKE is sufficient:
WHERE my_field LIKE '[a-zA-Z][a-zA-Z]%'
假设字母顺序"仅指拉丁字符,而不是 Unicode 中按字母顺序分类的任何字符.
Assuming that by "alphabetical" you mean only latin characters, not anything classified as alphabetical in Unicode.
注意 - 如果您的排序规则区分大小写,则将范围指定为 [a-zA-Z] 很重要.[a-z] 可以排除 A 或 Z.[A-Z] 可以排除 a 或 z.
Note - if your collation is case sensitive, it's important to specify the range as [a-zA-Z]. [a-z] may exclude A or Z. [A-Z] may exclude a or z.
这篇关于检查字符串的起始字符是否在 T-SQL 中按字母顺序排列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:检查字符串的起始字符是否在 T-SQL 中按字母顺序
基础教程推荐
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- 在 SQL 中连接多个表 2021-01-01
- 无法解决整理冲突 2021-01-01
