[英]How to run a query condition for only certain organizations in Oracle SQL
我有一個查詢,它具有從輸出中消除某些行的條件。 我只需要這個條件來運行兩個組織。 其余的它應該繞過條件並返回所有行。 這是查詢
SELECT lines.customer_trx_id customer_trx_id,
lines.unit_selling_price,
lines.customer_trx_line_id customer_trx_line_id
FROM mtl_units_of_measure uom,
ra_customer_trx_lines_all lines,
ra_customer_trx_all trx
WHERE trx.customer_trx_id = lines.customer_trx_id
AND trx.complete_flag = 'Y'
AND lines.uom_code = uom.uom_code(+)
AND lines.line_type = 'LINE'
AND trx.customer_Trx_id =1
AND lines.unit_selling_price <>0
AND lines.description NOT LIKE '%PROM%DISCOUNT%'
AND lines.description NOT LIKE '%TIER%DISCOUNT%'
最后兩個條件應該只對 orgs 1 和 2 運行,而不是對 org 3 運行。 org 的字段名稱是 org_id。
我不知道 org_id 屬於哪個表,所以我只是在下面將它添加為org_id
。 只是一些額外的 pharantesis 和OR
條件可以做我認為的伎倆,只要確保org_id
不包含空值:
SELECT lines.customer_trx_id customer_trx_id,
lines.unit_selling_price,
lines.customer_trx_line_id customer_trx_line_id
FROM mtl_units_of_measure uom,
ra_customer_trx_lines_all lines,
ra_customer_trx_all trx
WHERE trx.customer_trx_id = lines.customer_trx_id
AND trx.complete_flag = 'Y'
AND lines.uom_code = uom.uom_code(+)
AND lines.line_type = 'LINE'
AND trx.customer_Trx_id =1
AND lines.unit_selling_price <>0
AND
( (lines.description NOT LIKE '%PROM%DISCOUNT%'
AND lines.description NOT LIKE '%TIER%DISCOUNT%'
and org_id in (1,2)) or
org_id not in (1,2)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.