在我的办公室,我们使用的一张表记录了我们的订单号。问题是员工在数据库字段中输入的数字不一致。
列出了一些示例:
'7-26-13 543006-27031', '345009-27031', 'KWYD-863009-27031'.
我需要找到一种方法来只返回 'nnnnnn-nnnnn' 子字符串,无论它在字段中的哪个位置。大多数情况下,这种模式处于该领域的尽头,但并非总是如此。我已经在 WHERE 子句中使用 LIKE 表达式将数据记录限制为具有该模式的数据记录,但我不知道如何最好地将该模式作为列返回。
编辑:
我们仍在使用 SQL Server 2000
我想要做的是:
SELECT SUBSTRING(VendorOrderNo, ??, 12) AS OrderNo
FROM Orders
WHERE VendorOrderNo LIKE '%[0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9]%'