检查字符串的起始字符是否在 T-SQL 中按字母顺序

Check if starting characters of a string are alphabetical in T-SQL(检查字符串的起始字符是否在 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] 可以排除 AZ.[A-Z] 可以排除 az.

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 中按字母顺序排列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
SSIS: Model design issue causing duplications - can two fact tables be connected?(SSIS:模型设计问题导致重复-两个事实表可以连接吗?)
SQL Server Graph Database - shortest path using multiple edge types(SQL Server图形数据库-使用多种边类型的最短路径)
Invalid column name when using EF Core filtered includes(使用EF核心过滤包括时无效的列名)
How should make faster SQL Server filtering procedure with many parameters(如何让多参数的SQL Server过滤程序更快)
How can I generate an entity–relationship (ER) diagram of a database using Microsoft SQL Server Management Studio?(如何使用Microsoft SQL Server Management Studio生成数据库的实体关系(ER)图?)