SQL条件:使用正则表达式的格式为“像”
问题描述:
我有这样一个数据库中的记录:1K-05,在一个名为“DocXmtlNum”SQL条件:使用正则表达式的格式为“像”
的SQL语句列设法得到它是这样的:
"SELECT DISTINCT DocXmtlNum FROM table1 WHERE DocXmtlNum Like '#?[A-Z]*' ORDER BY DocXmtlNum Desc"
但是,它并没有抓住任何记录。我假设“#?[A-Z] *”部分是说它想要获取以数字开头的记录,后跟一个字母,后面跟着任何其他字符。这有什么问题?我如何编写正则表达式来获得一个数字后跟一个字母的记录,然后是任何字符?
注意:SQL语句已从VB6自动转换为vb.net4,因此引入了错误。
答
这是你想要的吗?
WHERE DocXmtlNum REGEXP '^[0-9]?[A-Z]-.+$'
此检查:
- 一个可选的数字
- 信
- 连字符
- 至少一个或多个字符
好,谢谢!什么?意思?在vb6的原始声明中,#是什么意思? – mjpablo23
我不知道vb6模式的含义。 '?'表示一个或大部分前面的元素(在这种情况下是一个数字)。我可能会猜测,在原始代码中,'#'是一个数字。 –
好酷,感谢您的帮助! – mjpablo23