从你的要求和评论来看
LIKE
接线员应该非常接近你的需要:
SELECT *
FROM mytable
WHERE mycolumn LIKE 'Status Changed from % to Completed'
这将允许任何字符序列作为以前的状态。
否则,如果预先知道可能的状态值列表,则可以使用regexp使筛选更精确:
SELECT *
FROM mytable
WHERE mycolumn REGEXP 'Status Changed from (Needs Action)|(Open) to Completed'
这个
REGEXP
operator
检查列中的值是否与给定的正则表达式匹配。管子(
|
)代表
交替
运算符(至少有一个值必须匹配)。
Demo on DB Fiddle
create table mytable (
mycolumn varchar(500)
);
insert into mytable values
('Status Changed from Needs Action to Completed'),
('Status Changed from Open to Completed'),
('Not a relevant record');
查询1
SELECT *
FROM mytable
WHERE mycolumn LIKE 'Status Changed from % to Completed';
| mycolumn |
| --------------------------------------------- |
| Status Changed from Needs Action to Completed |
| Status Changed from Open to Completed |
问题2
SELECT *
FROM mytable
WHERE mycolumn REGEXP 'Status Changed from (Needs Action)|(Open) to Completed';
| mycolumn |
| --------------------------------------------- |
| Status Changed from Needs Action to Completed |
| Status Changed from Open to Completed |