1
所以我在我的Oracle数据库中的以下用户定义类型:为什么在使用嵌套查询时无法引用用户定义的类型字段?
CREATE OR REPLACE TYPE METRIC_IMPERIAL_DISTANCE AS OBJECT
(
METERS_FEET INTEGER,
CENTIMETERS_INCHES INTEGER,
FRACTION NUMBER
)
我可以做到以下几点:
SELECT t_id, get_distance_breakdown (h.height, h.unit_of_measure_id) height_breakdown
FROM heights h
甚至
SELECT t_id, get_distance_breakdown (h.height, h.unit_of_measure_id).meters_feet height_meters_feet
FROM heights h
但下面失败了ORA-00904:“HEIGHT_BREAKDOWN”。“METERS_FEET”:无效标识符错误:
SELECT t_id, height_breakdown.meters_feet
FROM (SELECT t_id, get_distance_breakdown (h.height, h.unit_of_measure_id) height_breakdown
FROM heights h);
什么给?如果没有一些简单而明显的解决方法,那么这会大大减少对oracle的用户定义类型有用的东西。我觉得我一定会错过一些东西。
啊,是的,这做到了,非常感谢你 – 2008-11-05 20:51:35