过滤器字段

问题描述:

在表中,我们有字段为乘积码,我们有2型的产品代码过滤器字段

类型1)总是与2号开始,然后冲,然后在5号,然后冲和结束时再次2号码。例如是“12-04442-12”

类型2)始终以2数字开头,然后破折号,然后7号码,然后破折号和最后2号码。示例是“12-0993012-33”

当前2个数字(前短划线)匹配前2个数字(第二个破折号后)和代码类型为2(短划线之间7个数字)时,我们需要获取所有记录。

从t这

12-0993012-33 
12-04442-12 
07-0005402-07 
12-00052-33 
43-0010237-43 

必须得到这个

07-0005402-07 
43-0010237-43 

我不是那么数据库,任何帮助表示赞赏。

如果我正确理解,你的第二种类型的代码总是包含13个字符。如果是这样,那就用这个:

SELECT * FROM your_table 
WHERE 
LENGTH(your_field) = 13 
AND 
SUBSTR(your_field, 1, 2) = SUBSTR(your_field, -2)