我有一个 Mysql 表,其中有一个名为 ACCOUNT_NUMBER 的列,其中包含我需要提取的交易号:
ACCOUNT_NUMBER
MB-MuchBetterDeposit-230-337882630--
CallCard-BankDeposit-350-337887834--
RealPay-Deposit-108-337894920--
PayMathod-WebDeposit-2-339163798--PAYMETHODAR
要提取位于分隔符“-”和“--”之间的 9 位数字,我在查询中使用了它:
SUBSTR(ACCOUNT_NUMBER FROM ( locate('--',ACCOUNT_NUMBER)-9) FOR 9)
返回值(337882630、337887834 等...)。现在,如果我想象 Tx 的长度会在时间上从 9 个数字增加到 10 个或 11 个数字,那么准确提取这个 Tx 的解决方案是什么?我尝试使用 locate 但它搞砸了,因为“-”和“--”非常相似。