我有以下查询,而不是为同一个 BN 创建多个条目(行),它应该在同一行中创建具有 FC、FM、MS 值的条目。
select bspt.BN, FC, FM, MS from(select distinct(ozt.BRD_ID),
bp.NAME as BN,
os.OSS FC, '' FM, '' MS
from PR_BP ozt, PR_BP_BPP bp, BDD b, OS_VIEW os
where bp.BRD_ID = ozt.BRD_ID AND ozt.BRD_ID = os.OBJECT_ID and
os.OST = 'PR_BP_BPP' AND (ozt.BID = 10001)
and ozt.BID = b.BID AND ozt.BP_ACTIVE = 'Y'
UNION ALL
select distinct(ozt.BRD_ID),
bp.NAME as BN,
'' FC, os.OST FM, '' MS
from PR_BP ozt, PR_BP_BPP bp, BRAND b, OS_VIEW os
where bp.BRD_ID = ozt.BRD_ID AND ozt.BRD_ID = os.OBJECT_ID and
os.OST = 'PR_BP_BPP' AND (ozt.BID = 10002)
and ozt.BID = b.BID AND ozt.BP_ACTIVE = 'Y'
上面的查询正在为 BNAME 列生成包含多个条目的输出。因此,与其创建单独的条目,不如只为常见的 BNAME 创建单行。