Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对SQL中的类似项进行计数_Sql_Postgresql_Pattern Matching_Aggregate Functions - Fatal编程技术网

对SQL中的类似项进行计数

对SQL中的类似项进行计数,sql,postgresql,pattern-matching,aggregate-functions,Sql,Postgresql,Pattern Matching,Aggregate Functions,我有一个表格,其中有一列学生的成绩。 我们有A+和A和A-和B+和B- 现在我们想把A+和A和A-都视为A。因此B+和B和B-都等于B 如何编写表达式来聚合此值? 问题是计算有多少A和B?A+和A-也意味着A.?一种方法: SELECT left(grade, 1) as base_grade, count(*) AS ct FROM tbl GROUP BY 1 ORDER BY 1 要求博士后9.1以上。否则使用子字符串(等级,1,1)

我有一个表格,其中有一列学生的
成绩

我们有
A+
A
A-
B+
B-

现在我们想把
A+
A
A-
都视为
A
。因此
B+
B
B-
都等于
B

如何编写表达式来聚合此值? 问题是计算有多少
A
B?
A+
A-
也意味着
A.

一种方法:

SELECT left(grade, 1) as base_grade, count(*) AS ct
FROM   tbl
GROUP  BY 1
ORDER  BY 1
要求博士后9.1以上。否则使用
子字符串(等级,1,1)