如何在Oracle 18c中使用SQL Developer正确查询对象类型表?
解决Oracle对象类型列的查询问题
在Oracle中查询存储对象类型的列时,直接使用列名.属性的写法会导致解析错误,你可以通过以下两种方式正确查询:
方法1:使用表别名访问对象属性
给表指定别名后,通过别名关联对象列再访问属性:
SELECT mu.user_info.name, mu.user_info.email FROM MyUser1 mu;
方法2:使用VALUE()函数引用对象实例
VALUE()函数可返回行中的对象实例,通过它直接访问属性:
SELECT VALUE(mu).name, VALUE(mu).email FROM MyUser1 mu;
额外说明
如果需要查询对象的所有属性,也可以直接查询对象列,Oracle会以对象结构格式返回结果:
SELECT user_info FROM MyUser1;
内容的提问来源于stack exchange,提问作者Bèdàsà Wàyèssà
相关产品推荐
相关产品推荐

