SQL条件:使用Regex格式化程序为“Like”

时间:2017-03-08 23:42:20

标签: mysql sql database vb.net vb6

我在这样的数据库中有一条记录:1K-05,在名为“DocXmtlNum”的列中

尝试获取它的SQL语句是这样的:

"SELECT DISTINCT DocXmtlNum FROM table1 WHERE DocXmtlNum Like '#?[A-Z]*' ORDER BY DocXmtlNum Desc"

但是,它没有抓取任何记录。我假设“#?[A-Z] *”部分说它想要获得以数字开头的记录,后跟一个字母,然后是任何其他字符。这有什么问题?我如何编写正则表达式来获取一个数字后跟一个字母的记录,后跟任何字符?

注意:SQL语句是从VB6自动转换为vb.net4的,因此引入了错误。

1 个答案:

答案 0 :(得分:1)

这是你想要的吗?

WHERE DocXmtlNum REGEXP '^[0-9]?[A-Z]-.+$'

这会检查:

  • 可选数字
  • 一封信
  • 连字符
  • 至少还有一个角色