在Oracle中显示列名和该列中的空值数量。

6 浏览
0 Comments

在Oracle中显示列名和该列中的空值数量。

我想显示表中每列的空值数量。类似于这样...

我有一个名为customer的表,customer中的字段有cust_id,cust_name, cust_add,cust_gender,cust_phone等等

我想要的输出如下:

列名         空值数量
cust_id         0
cust_name       2
cust_add        5
cust_gender     3
cust_phone      5

...

而我正在使用Oracle。

0
0 Comments

问题的出现的原因是需要在Oracle数据库中显示列名和该列中存在的空值的数量。解决方法是使用以下查询语句:

SELECT column_name, num_nulls
FROM all_tab_columns
WHERE table_name = 'CUSTOMER'; -- 替换为你的表名

这个查询语句将返回指定表中每个列的名称和空值的数量。

需要注意的是,这个查询只会给出上一次分析表时的统计数据。如果需要实时数据,可以在运行查询之前先运行ANALYSE <tablename>命令,或者通过使用动态SQL语句在PL/SQL过程中传递一个REF CURSOR参数来实现。前者是一种简单的方法,而后者则需要编写更复杂的代码。

通过使用以上方法,我们可以轻松地在Oracle数据库中显示列名和对应列中存在的空值的数量。

0
0 Comments

问题的原因是需要在Oracle数据库中显示每个列的列名和空值的数量。这可以通过使用查询语句和条件语句来实现。解决方法如下:

1. 首先,使用SELECT语句从表中选择需要显示的列。在这个例子中,我们选择了customer表中的所有列。

2. 然后,使用SUM函数和CASE语句来计算每个列中的空值数量。如果列的值为空,则使用CASE语句返回1,否则返回0。SUM函数将所有的1相加,从而得到每个列中空值的数量。

3. 最后,将查询结果作为一个整体显示出来。这样就可以得到每个列的列名和空值的数量。

以下是一个示例查询,显示了如何使用上述方法来显示列名和空值数量:

SELECT 
    sum(case when cust_id is null then 1 else 0 end) cust_id,
    sum(case when cust_name is null then 1 else 0 end) cust_name, 
    sum(case when cust_add is null then 1 else 0 end) cust_add,
    ..... 
FROM
    customer;

在这个示例中,我们选择了customer表中的cust_id、cust_name和cust_add列,并使用SUM函数和CASE语句计算了每个列中的空值数量。最终的查询结果将显示每个列的列名和空值的数量。

通过使用上述方法,我们可以轻松地显示每个列的列名和空值的数量,从而更好地了解数据的完整性和质量。这对于数据分析和数据清洗非常有帮助。

0