返回一个布尔值,如果它们中至少有一个匹配MYSQL中的正则表达式
我有一个名为fileName的键值为org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/ProposalRound.java和I想要在fileName与%/ src%匹配时返回一个布尔值。查询看起来像返回一个布尔值,如果它们中至少有一个匹配MYSQL中的正则表达式
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
我要添加其返回1或0的另一字段,如果文件中的至少一个以%/ SRC /%匹配
提前致谢!
尝试使用子查询像
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%')
虽然此代码段是欢迎,并可能提供一些帮助,如果它包含* how *和* why *解释问题的解释](// meta.stackexchange.com/q/114762)将会[大大改进]。请记住,你正在为将来的读者回答这个问题,而不仅仅是现在问的人!请编辑您的答案以添加解释,并指出适用的限制和假设。 –
可能需要'LIKE',而不是'REGEXP'。 –
检查https://dev.mysql.com/doc/refman/5.7/en/regexp.html –