达梦统计时通过同一字段的值分段统计,类似pgsql的count(字段 = ‘1’ or NULL)方式统计
时间: 2024-02-01 16:14:32 浏览: 30
在达梦数据库中,可以使用CASE WHEN语句实现类似于 PGSQL 中 count(字段 = '1' or NULL) 的分段统计。
例如,我们有一个表t,其中有一个字段为field,我们要统计该字段值为1或为空的记录数,可以使用以下SQL语句:
```
SELECT COUNT(CASE WHEN field = '1' OR field IS NULL THEN 1 ELSE NULL END) AS cnt
FROM t;
```
在上述语句中,使用了CASE WHEN语句,当字段为1或为空时,返回1,否则返回NULL。然后使用COUNT函数对返回的结果进行统计,得到符合条件的记录数。最终使用AS关键字对结果集重命名为cnt。
相关问题
pgsql统计表的字段数量
可以使用以下 SQL 查询语句来统计 PostgreSQL 数据库中每个表的字段数:
```
SELECT table_name, count(column_name)
FROM information_schema.columns
WHERE table_schema='public'
GROUP BY table_name
ORDER BY count(column_name) DESC;
```
这将返回所有公共模式中的每个表以及每个表中的字段数。请注意,此查询假定您的表都在“public”模式中。如果您使用了其他模式,请相应地更改查询中的“table_schema”条件。
pgsql统计一个字段分组后的量级
要统计一个字段分组后的量级,可以使用 PostgreSQL 中的 COUNT 函数和 GROUP BY 子句来实现。例如,假设有一个表格名为 employees,其中有一个字段为 department,我们想要统计每个部门有多少个员工,可以使用如下的 SQL 查询语句:
```
SELECT department, COUNT(*) AS count
FROM employees
GROUP BY department;
```
这条 SQL 查询语句会将 employees 表格中的记录按照 department 字段进行分组,然后统计每个部门的记录数量,并将结果按照 department 和 count 两个字段进行显示。这样就能够得到每个部门的记录数量。如果要进一步得到每个部门的量级,可以将 count 字段进行取整或者进行其他的数学运算。