sql - 如何根据 SQL 中另一列中的值计算一列中出现的次数?
问题描述
假设我们有一个这样的表:
tweet_id tweet
1 The election was bad. Boycott the election.
2 That was great.
3 What a great election!
现在,我正在尝试编写一些 SQL 代码来计算tweet_ids
相应tweet
包含单词的位置的数量'election'
。
即tweet_id
1 和 3 都包含该词'election'
至少一次。因此,我想返回值 2(两个tweet_ids
)。
任何想法如何做到这一点?我尝试了以下方法,但没有奏效:
SELECT tweet, COUNT(*) tweet_id FROM table WHERE tweet = "election"
解决方案
您可以使用 like 检查它是否包含“选举”关键字,然后计算 id
SELECT COUNT(tweet_id)
FROM table
WHERE LOWER(tweet) LIKE "%election%"
推荐阅读
- c# - 在 LINQ GroupBy 函数中对匿名类型使用 IEqualityComparer
- derby - 如何配置我的数据库服务器以接受 ide 之外的远程连接?
- ibm-mq - 解析在 Azure 事件中心收到的分隔消息(来自 IBM MQ 的事件消息)
- css - 删除 FF 和 IE 上文本溢出省略号的多余空格结尾
- postgresql - 如何列出按id分组的表中的文档?
- r - 如何在闪亮的应用程序中创建上传图像的堆栈
- typescript - 打字稿:从应用于键控对象的字符串文字联合推断正确的类型
- powershell - 计算嵌套在其他安全组中的安全组
- android - 图像未在视图寻呼机中加载
- java - 嵌套循环时间复杂度 for( i = n; i > 0; i /= 2) VS for( i = n; i > 0; i/=2) for( j = 0; j < i; j++)