我需要在第二个查询中引用一个查询的 sql 数据作为参数值。
例如:
select order_no, order_date, customer
from orders;
select payment_no, payment_date, amount
from payments
where order_no = [:order_no];
这在 XML 中可能吗?
我需要在第二个查询中引用一个查询的 sql 数据作为参数值。
例如:
select order_no, order_date, customer
from orders;
select payment_no, payment_date, amount
from payments
where order_no = [:order_no];
这在 XML 中可能吗?
这是解决方案。
方法一绑定变量:
<dataQuery>
<sqlStatement name="Q1">
<![CDATA[
SELECT order_no, order_date, customer from orders
]]>
</sqlStatement>
<sqlStatement name="Q2">
<![CDATA[
SELECT payment_no, payment_date, amount
from payments where order_no = :order_no ]]>
</sqlStatement>
</dataQuery>
我们只需要在第二个查询中使用冒号 (:) 进行引用。
方法二查询链接:
<dataQuery>
<sqlStatement name="Q1">
<![CDATA[
SELECT order_no, order_date, customer from orders ]]>
</sqlStatement>
<sqlStatement name="Q2">
<![CDATA[
SELECT payment_no, payment_date, amount
from payments ]]>
</sqlStatement>
<link name="ORDER_LINK" parentQuery="Q1" parentColumn="ORDER_NO" childQuery="Q_2" childColumn="ORDER_NO"/>
</dataQuery>