mysql - 我想在每个字母中打印单词并计算字母多少次
问题描述
sreenath 我想要这样的输出
select * from string_split(separator ' ');
小号 - 1 r - 1 e - 2 n - 1 t - 1
解决方案
我了解您正在尝试生成一个结果集,以显示每个字符在一个单词中出现的次数。
为此,最好设置一个表格,列出您要跟踪其出现的所有字符。
CREATE TABLE alphabet (
c varchar(1) NOT NUL PRIMARY KEY
);
INSERT INTO alphabet VALUES('a');
INSERT INTO alphabet VALUES('b');
...
INSERT INTO alphabet VALUES('z');
现在下面的查询应该可以解决问题:
SELECT
c.c,
LENGTH(t.value)
- LENGTH( REPLACE ( LCASE(t.value), c.c, '') ) occurrences
FROM
mytable t
INNER JOIN alphabet c
ON INSTR(t.value, c.c) > 0
您可以在字母表中自由添加任何其他字符(可能是数字,或任何特殊字符)。根据当前查询,您应该在输入字母表时使用小写字母。
注意:这假设您的数据存储在表“mytable”的“值”列中
-
-
推荐阅读
- python - 在 while 循环中更新 python 字典的问题
- r - 在带有表的映射函数中保留列名
- r - R:数据表:是否可以在没有行名的情况下呈现所有输出?
- python - 如何用其他字符串列表替换字符串?
- reactjs - TinyMCE 5:当编辑器被禁用时,是否有一种开箱即用的方法来启用工具栏按钮?
- python - 如何根据另一列值获得一列的最小值?(我不认为这是重复的,在这里找不到任何答案)
- python - 如何将 Trello 上传和图像上传到 Trello,但不将其设置为 Cover(这是默认设置)
- ios - SwifUI Xcode 12.5 iOS 14 将 UIImage 添加到观察视图模型
- javascript - React js - axios 调用 - url maker 传递数组参数
- android - 如何在不在屏幕上绘图的情况下在屏幕录制上绘图?