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

如何打印常量的数据类型?SQL中是否有类似Python type函数的方法

SQL查询常量数据类型的实现方法

SQL 没有统一的跨数据库标准内置函数和Python的type()完全对应,但主流关系型数据库都有各自的专用实现,可直接用于查询常量的数据类型:

  • SQLite、MySQL 8.0.27+/MariaDB:使用内置TYPEOF()函数
    示例代码:
    -- 查询数值类型
    SELECT TYPEOF(50);
    -- 查询字符串类型
    SELECT TYPEOF('Hello');
    
    执行后会直接返回对应数据类型的字符串标识,比如integer、text。
  • PostgreSQL:使用pg_typeof()函数
    示例代码:
    SELECT pg_typeof(50); -- 返回 integer
    SELECT pg_typeof('Hello'::varchar); -- 返回 character varying
    
  • SQL Server:使用SQL_VARIANT_PROPERTY()函数,第二个参数固定传BaseType指定返回基础类型
    示例代码:
    SELECT SQL_VARIANT_PROPERTY(50, 'BaseType'); -- 返回 int
    SELECT SQL_VARIANT_PROPERTY('Hello', 'BaseType'); -- 返回 varchar
    
  • Oracle:使用DUMP()函数,返回结果中Typ字段对应的值就是数据类型编码,可对照Oracle官方类型编码表确认具体类型
    示例代码:
    SELECT DUMP(50) FROM DUAL; -- 返回结果中 Typ=2 对应NUMBER类型
    SELECT DUMP('Hello') FROM DUAL; -- 返回结果中 Typ=96 对应CHAR类型
    

注意:上述方法仅适用于对应数据库方言,没有全数据库通用的统一实现,仅学习场景下按需使用即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 23:57:03