【发布时间】:2022-10-13 09:37:28
【问题描述】:
假设我有这张表,其中有一列名为groups:
| groups |
|---|
| X0C5TB24 |
| X11C17N24 |
| X1C14B25 |
| X7C18B15 |
| X0C88TB12 |
| ... |
我想使用WHERE 过滤给我正好"X0" 或"X1" 的值,所以我的最终结果应该是:
| groups |
|---|
| X0C5TB24 |
| X1C14B25 |
| X0C88TB12 |
到目前为止我的尝试:
WHERE
groups REGEXP "^X[0-1]"
和
WHERE
SUBSTR(groups, 1,2) IN ("X0","X1")
但是这些也返回"X11C17N24",这不是我想要的,因为它实际上是X11 而不是X0 或X1(值中的C 充当分隔符)。
我在这里或其他地方都找不到解决方案或接近我的问题的东西,所以任何建议或建议将不胜感激。
【问题讨论】:
-
试试:
REGEXP '^X[0-1][a-zA-Z]'。 -
为什么不应该返回那个?它以
X1开头,这就是您说要匹配的内容。 -
@Barmar,我认为
C是那些X 的分隔符.. 因为"X11C17N24"实际上是X11,所以不应该返回值。 -
顺便说一句,MySQL workbench 8.0 不代表 MySQL 版本。运行
SELECT version();以检查确切的 MySQL 版本。 -
@FanoFN您可能是对的,但是OP应该在您将其编辑到问题中之前对其进行确认。
标签: mysql string mysql-workbench