mysql - 如果其中至少一个与 MYSQL 中的正则表达式匹配,则返回 bool 值

标签 mysql regex where-clause

我有一个名为 fileName 的键,其值为 org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/ProposalRound.java,如果 fileName 与 %/src% 匹配,我想返回一个 bool 值。查询看起来像

SELECT p.id, p_userName,
COUNT(f.id) as NoOfFilesModified, 
sum(f.f_linesInserted) as linesInserted, 
sum(f.f_linesDeleted) as linesDeleted
FROM t_change as c, t_file as f, t_revision as r, t_people as p
WHERE f.f_revisionId = r.id 
AND r.rev_changeId = c.id
AND c.ch_authorAccountId = p.id
GROUP BY p.id, p.p_userName;

得到的结果为

id  p_userName  NoOfFilesModified   linesInserted   linesDeleted
1   spearce     2190                   50102    20117
2   HudsonVoter 397 14272   494

我想添加另一个字段,如果至少有一个文件与 %/src/% 匹配,则返回 1 或 0

提前致谢!

最佳答案

尝试使用子查询,例如

EXISTS(SELECT 1 FROM t_file WHERE f.f_revisionId = r.id AND f.filename REGEXP 'src')

EXISTS(SELECT 1 FROM t_file WHERE f.f_revisionId = r.id AND f.filename LIKE '%src%')

关于mysql - 如果其中至少一个与 MYSQL 中的正则表达式匹配,则返回 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42953016/

相关文章:

regex - 正则表达式匹配所有内容但保留一些指定的匹配项

mysql - 获得非付费成员(member)

mysql - 包含 union 的 where 子句仅返回第一个查询

java - Spring - 无效参数值 : java. io.NotSerializableException

php - 使用后视组还是捕获组更好?

MySQL 通过乘以其他行中的值返回 1 或 0

python - 使用 re 模块帮助在 python 中构建正则表达式

mysql - 如何构建查询 WHERE X OR HAVING Y

php MySQL INSERT 值引用另一个表

php - 多项选择 PHP