mysql - 如何返回等于字符串的所有子字符串的行

标签 mysql sql regex

我需要返回符合以下条件的所有数据库行:

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' ”,因为它只会返回一行。
另外,我不愿意在将所有字符串发送到数据库之前创建它们。

我正在使用 MySQL 5,也许一些正则表达式会有帮助?

最佳答案

如果我正确理解您的要求,这应该可以满足您的要求;

SELECT col FROM tbl WHERE INSTR(REVERSE('123456'), REVERSE(col))=1;

关于mysql - 如何返回等于字符串的所有子字符串的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9151883/

相关文章:

php - MySQL 选择变量不起作用

php - 用于字符串的 MySQL IN

mysql - 从 ExtendScript 连接到 MySQL

sql - 连接两个具有不匹配行的表

SQL 查询问题 : How to merge two lists

regex - R regex - 匹配直到从末尾开始的第一个字母-空格-数字组合

php - 使用 1 个图像按钮处理 id

sql - 如何更改列 nvarchar 长度而不丢失

regex - 如何从字符串中获取非字母分隔符

python - 在 Python 中使用正则表达式正确匹配嵌套括号