Aquí es el SQL:no puede identificar razón de "la columna ambiguamente definido" error
SELECT alloc.oa_id
FROM qdod.qtran_owner_allocation alloc
INNER JOIN
(SELECT h.oa_id, h.div_ord_no, h.process_queue_id, h.from_ba_no,
h.from_ba_suf, h.from_interest_type_cd, h.from_interest_type_cd, h.from_div_ord_grp,
h.transfer_percent, h2.original_net_amount, h2.new_net_amount
FROM qdod.qtran_fund_transfer_hist h
INNER JOIN
(SELECT DISTINCT h0.oa_id, h0.original_net_amount, h1.new_net_amount
FROM qdod.qtran_fund_transfer_hist h0
INNER JOIN
(SELECT h4.oa_id, SUM (h4.new_net_amount) AS new_net_amount
FROM qdod.qtran_fund_transfer_hist h4
GROUP BY h4.oa_id) h1
ON h0.oa_id = h1.oa_id
WHERE h0.original_net_amount <> h1.new_net_amount AND h0.oa_id >= 100000000) h2
ON h.oa_id = h2.oa_id) h3
ON alloc.oa_id = h3.oa_id;
Cada columna tiene su tabla definida. La combinación interna principal (la que está después de la tabla de alloc) funciona bien cuando se ejecuta por sí mismo. ¿Alguna idea de por qué esto no está funcionando? Esto se está ejecutando en una base de datos Oracle 10.2.0.4 (también lo he intentado con una base de datos 11.2.0.1 pensando que si se trataba de un error de Oracle, se resolvería en 11.2, pero también falló allí).
+1 Good eye. Como se señala en [mi respuesta] (http://stackoverflow.com/questions/4268140/cant-idenfity-reason-for-column-ambiguously-defined-error/4268305#4268305), no creo que esta columna, incluso necesita ser seleccionado –