我很困惑如何计算相同但格式不同的项目。例如,我们想知道人们有多少种不同的水果,并具有以下数据:
Mary|Apple|
Mary|apple|
Mary|Apple |
Mary|Orange|
Liu|Grape|
Liu|Apple|
我期望输出
Mary|2
Liu|2
但是如果我做
count(distinct fruits)
然后我得到Mary|4
Liu|2
在这种情况下是否有任何处理格式的方法?
最佳答案
您可以数一下:
删除开头和结尾的空格-使用TRIM()
。
卸下字母大写字母-使用LOWER()
。
如:
select
name,
count(distinct lower(trim(fruits)))
from my_table
group by name
如果碰巧有相似的不规则之处,可以对
name
列使用相同的策略。关于sql - 使用SQL计算具有不同格式的项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52350355/