Mysql 如何返回等于字符串所有子字符串的行
我需要返回符合以下条件的所有db行:Mysql 如何返回等于字符串所有子字符串的行,mysql,sql,regex,Mysql,Sql,Regex,我需要返回符合以下条件的所有db行: SELECT col FROM tbl WHERE ALL 'reversed-sub-strings' of 'reversed-string' = col 例如: 某些字符串=123456 应该返回相等的行 6 56 456 3456 23456 123456 当然,我们不能使用“WHERE col LIKE'%some string'”,因为它只返回一行。 此外,我不愿意在将字符串发送到db之前创建所有字符串 我正在使用MySQL 5,也许一些正
SELECT col FROM tbl WHERE ALL 'reversed-sub-strings' of 'reversed-string' = col
例如:
某些字符串=123456
应该返回相等的行
656
456
3456
23456
123456 当然,我们不能使用“WHERE col LIKE'%some string'”,因为它只返回一行。
此外,我不愿意在将字符串发送到db之前创建所有字符串
我正在使用MySQL 5,也许一些正则表达式会有所帮助?如果我正确理解您的需求,这应该可以满足您的需求
SELECT col FROM tbl WHERE INSTR(REVERSE('123456'), REVERSE(col))=1;
听起来对正则表达式来说是个好问题:不确定您的需求到底是什么(例如“66”是什么?)只需要上面的需求,反转一些字符串,创建所有子字符串,反转这些,然后在结果中查找匹配项。