首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过计算字符串匹配百分比从数据库中读取

通过计算字符串匹配百分比从数据库中读取
EN

Stack Overflow用户
提问于 2019-09-28 02:31:05
回答 2查看 24关注 0票数 0

‘'select from Y where X like %序列加速算法%’

我们想读一下这个例子,比如“我的序列加速算法”。在通过计算字符串匹配百分比从数据库读取的情况下,我们如何做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2019-09-28 02:48:52

我不认为sql有这个特性。但是你可以通过写你的逻辑来实现。首先通过like %searchString%获取结果。这个结果将是一个列表。现在迭代此列表,并在通过您的逻辑检查每个项目后删除(或将所选项目添加到新列表中)。

票数 0
EN

Stack Overflow用户

发布于 2019-09-28 06:23:44

您可以使用条件聚合:

代码语言:javascript
运行
复制
SELECT
    SUM(CASE WHEN X like '%sequence acceleration algorithem%' THEN 1 ELSE 0 END)
        / COUNT(*) AS ratio
FROM Y

这将为您提供列X包含搜索字符串的记录的比率。

注意:如果您的表为空,则此查询将生成一个错误,因为分母将为0。使用NULLIF() (或您的关系型数据库中的-like)来避免该错误:

代码语言:javascript
运行
复制
SELECT
    SUM(CASE WHEN X like '%sequence acceleration algorithem%' THEN 1 ELSE 0 END)
        / NULLIF(COUNT(*), 0) AS ratio
FROM Y
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58139812

复制
相关文章

相似问题

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