【发布时间】:2021-10-13 10:22:17
【问题描述】:
我需要帮助解决一个我可能无法用语言很好地解释的难题。
查询只需要返回代码列中所有字符都在where子句中的结果。
假设我有下表并想返回 ABC 的代码和位置。
表:
| code | position |
|---|---|
| ABC | 100 |
| ABCD | 200 |
| ABCDE | 300 |
| CBA | 400 |
| BCA | 500 |
| A | 600 |
| BC | 700 |
| KABC | 800 |
| CABD | 900 |
| CA | 1000 |
预期结果:
| code | position |
|---|---|
| ABC | 100 |
| CBA | 400 |
| BCA | 500 |
| A | 600 |
| BC | 700 |
| CA | 1000 |
我已经尝试了许多使用 % 和 _ 运算符的 like 变体。开始认为 MySQL 没有这个功能。有任何想法吗?我已经走到了尽头。
【问题讨论】:
-
你看过regexp吗?不知道它的性能如何,但可能适合您的用例。函数确实取决于您的 mysql 版本。
-
@Sam020。抱歉,我也试过了,但也许我没有充分利用它。有什么想法吗?
-
也许您可以提供一两个您尝试过的 SQL 示例?也会帮助其他响应者。