简体   繁体   English

如何在MySQL where和where子句中的语句中使用正则表达式

[英]how to use regular expression in MySQL where like and in statement in where clause

I have a query where I have to look in 3 columns from a table where I have 2 columns searched on message column and last column should be on like . 我有一个查询,我必须从一个表中查找3列,在该表中我在message列上搜索了2列,最后一列应该在like上。 how can I use both statements at a time. 我如何一次使用两个语句。

SELECT   date(datetime) as dateonly ,
sum(CASE message when 'Accepted Images' then 1 else 0 end) as AcceptedIMG,
sum(CASE message when 'Rejected Images' then 1 else 0 end) as RejectedIMG,
sum(CASE when message like '%Changed  to %'    then 1 else 0 end) as ChangeIMG
FROM customer_1.audit_trail 
WHERE  message  like ('%Changed  to %') and message in ('Accepted Images','Rejected Images') 
GROUP BY (dateonly)
ORDER BY (dateonly) asc ;

You can use OR (and group your condition) 您可以使用OR(并分组您的条件)

SELECT   date(datetime) as dateonly ,
sum(CASE message when 'Accepted Images' then 1 else 0 end) as AcceptedIMG,
sum(CASE message when 'Rejected Images' then 1 else 0 end) as RejectedIMG,
sum(CASE when message like '%Changed  to %'    then 1 else 0 end) as ChangeIMG
FROM customer_1.audit_trail 
WHERE  (message  like ('%Changed  to %') OR message in ('Accepted Images','Rejected Images')) 
GROUP BY (dateonly)
ORDER BY (dateonly) asc ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM