首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择相似术语的计数

问选择相似术语的计数
EN

Stack Overflow用户
提问于 2017-03-07 03:48:00
回答 1查看 322关注 0票数 1

给定如下的mysql查询:

代码语言:javascript
复制
SELECT COUNT(*) FROM questions
WHERE questions.text LIKE "%some word%"
OR questions.text LIKE "%another word%"
OR questions.text LIKE "%yet another word%"
AND questions.field = "test"
... more WHERE conditions

返回每个LIKE术语的细目的最佳方法是什么,而不是返回与所有三个LIKE语句对应的行?

我知道可以通过为每个LIKE术语使用单独的SELECT语句来实现这一点,但是有没有办法将其封装到一条SELECT语句中,或者更短一些的语句中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-07 03:51:42

对于匹配值的总和,您可以使用select case

代码语言:javascript
复制
SELECT 
    sum( case when questions.text LIKE "%some word%"  then 1 else 0 end) as  test1
  , sum( case when questions.text LIKE "%another word%"  then 1 else 0 end) as  test2
  , sum( case when questions.text LIKE "%yet another word%"  then 1 else 0 end) as  test3
WHERE questions.field = "test"
 ... more WHERE conditions
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42634296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档