开发者

MySQL CASE statement and REGEXP

I want to use a CASE statement that uses REGEXP. Currently I am doing something like this:

SELECT NAME,
 CASE INFO
   WHEN 'not cool' THEN 'Not Cool'
   WHEN 'very cool' THEN 'Cool'
 ELSE INFO
 END AS INFO
FROM INFO_TABLE

Is there any way to use REGEXP in th开发者_运维百科e initial statement to make the condition act as a REGEXP? In theory this is what I want, which doesn't work:

SELECT NAME,    
 CASE INFO REGEXP
   WHEN 'not cool' THEN 'Not Cool'
   WHEN 'very cool' THEN 'Cool'
 ELSE INFO
 END AS INFO
FROM INFO_TABLE

I want 'not cool' and 'very cool' to be regular expressions. Hope that is clear enough.


try this

select name,
case
  when info regexp 'not cool' then 'Not Cool'
  when info regexp 'very cool' then 'Cool'  
else 
  info
end 
  as info
from INFO_TABLE;


I don't know if there is regex, but there are wilcards that you can use with LIKE.

The wildcard % gives you any number of characters. The wildcard _ gives you any single character.

Example:

SELECT email FROM people WHERE email LIKE '%harvard.edu'
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜