You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL Developer中查询Data_Type的Precision(精度)和Scale(小数位数)

实现查询带精度/小数位的完整数据类型的方法

你需要从Oracle数据库的内置数据字典视图中获取对应字段属性,将数据类型、精度、小数位三个字段拼接即可得到你要的格式。

基础查询语句

如果你只需要查询指定表的字段完整类型,直接用如下写法:

SELECT 
  DATA_TYPE || '(' || DATA_PRECISION || ', ' || DATA_SCALE || ')' AS full_data_type
FROM user_tab_columns
WHERE table_name = '你的目标表名(注意全大写)';

优化兼容写法

针对不需要精度的字段(比如DATE、CLOB等类型),可以加判断逻辑避免输出无效括号:

SELECT 
  CASE
    WHEN data_type IN ('CHAR', 'NUMBER', 'VARCHAR2', 'NVARCHAR2') 
      THEN data_type || '(' || nvl(data_precision, 0) || ', ' || nvl(data_scale, 0) || ')'
    ELSE data_type
  END AS full_data_type
FROM user_tab_columns
WHERE table_name = 'YOUR_TABLE_NAME';

用到的三个核心字段说明:

  • DATA_TYPE:原生数据类型名称,即你当前查询到的内容
  • DATA_PRECISION:数值类型的总长度、字符类型的存储总长度
  • DATA_SCALE:数值类型的小数位长度,非数值类型默认返回0

内容的提问来源于stack exchange,提问作者Adachi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 22:36:06