用户登录
用户注册

分享至

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

  • 作者: 孤狼丶丶丶丶
  • 来源: 51数据库
  • 2022-10-20

问题描述

是否可以仅使用 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.

软件
前端设计
程序设计
Java相关