【发布时间】:2011-08-19 14:28:33
【问题描述】:
我有一个问题:
SELECT * from arrc_Voucher WHERE VoucherNbr REGEXP "^1002"
这很好用 - VoucherNbr 是一个 16 个字符的代码,此查询查找前四位数字为 1002 的所有记录。
现在我需要扩展它,而且我对正则表达式不是很好。我需要能够找到前四位数字为 1002、1010、2015 或 3156 的所有记录。如果这些是完整的数字,我只需使用 IN:
SELECT * from arrc_Voucher WHERE VoucherNbr IN (1002, 1010, 2015, 3156)
但由于我需要以这些数字开头的代码,所以这行不通。谁能帮我扩展正则表达式以便它可以查找多个值?为了让它更有趣,这些值不能被硬编码;它们存储在数据库配置表中,并由自定义 php 函数以逗号分隔的字符串形式返回。所以我需要能够编写查询,以便正则表达式可以获取返回字符串的值,而不是我提到的特定四个数字。
【问题讨论】: