查询一个表的列数,该如何解决
查询一个表的列数
我现在需要查询一个数据表的列数,请问一个SQL语句怎么实现啊?
------解决方案--------------------
SELECT COUNT(*) FROM user_tab_columns
WHERE table_name= ?;
------解决方案--------------------
------解决方案--------------------
我现在需要查询一个数据表的列数,请问一个SQL语句怎么实现啊?
------解决方案--------------------
SELECT COUNT(*) FROM user_tab_columns
WHERE table_name= ?;
------解决方案--------------------
select count(column_id)
from user_tab_columns
where table_name='YOUR_TABLE_NAME';
-- 注意表名的大小写格式!(默认表名应该是大写)
------解决方案--------------------
--1.通过查看表可以知道列数
SQL> desc emp;
Name Type Nullable Default Comments
-------- ------------ -------- ------- --------
EMPNO NUMBER(4)
ENAME VARCHAR2(10) Y
JOB VARCHAR2(9) Y
MGR NUMBER(4) Y
HIREDATE DATE Y
SAL NUMBER(7,2) Y
COMM NUMBER(7,2) Y
DEPTNO NUMBER(2) Y
--2.通过计算user_tab_columns视图中的column_id的个数
SQL> select count(column_id)
2 from user_tab_columns
3 where table_name='EMP';
COUNT(COLUMN_ID)
----------------
8
--我们来看看user_tab_columns视图的结构
SQL> desc user_tab_columns;
Name Type Nullable Default Comments
-------------------- ------------- -------- ------- --------------------------------
TABLE_NAME VARCHAR2(30) Table, view or cluster name