gpt4 book ai didi

sql - 如何从表中选择具有非空值的列?

转载 作者:行者123 更新时间:2023-12-03 11:43:10 26 4
gpt4 key购买 nike

我有一个包含数百个列的表,其中许多为空,我想使用我的select语句,以便仅返回包含值的那些列。这将帮助我更好地分析数据。就像是:

从表名中选择(非空列);

我想选择所有具有至少一个非空值的列。

能做到吗?

最佳答案

看一下统计信息,它可能对您有用:

SQL> exec dbms_stats.gather_table_stats('SCOTT','EMP');

PL/SQL procedure successfully completed.

SQL> select num_rows from all_tables where owner='SCOTT' and table_name='EMP';

NUM_ROWS
----------
14

SQL> select column_name,nullable,num_distinct,num_nulls from all_tab_columns
2 where owner='SCOTT' and table_name='EMP' order by column_id;

COLUMN_NAME N NUM_DISTINCT NUM_NULLS
------------------------------ - ------------ ----------
EMPNO N 14 0
ENAME Y 14 0
JOB Y 5 0
MGR Y 6 1
HIREDATE Y 13 0
SAL Y 12 0
COMM Y 4 10
DEPTNO Y 3 0

8 rows selected.

例如,您可以检查NUM_NULLS = NUM​​_ROWS以标识“空”列。
引用: ALL_TAB_COLUMNSALL_TABLES

关于sql - 如何从表中选择具有非空值的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2219870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com