【发布时间】:2018-12-20 19:03:07
【问题描述】:
我有一个 如果表达式证明为真,则预定义的一组过滤条件应排除记录。 例如:排除交易状态 = 'MAT' 的记录并排除投资组合为 IN 的记录('Assume'、'HDLTV')。 AND 函数不起作用,因为它会查找两个条件都为真的记录。 OR 函数不会 要么工作,因为如果一个记录被一个而不是另一个保持为真,那么它将返回该记录。
是否有某种方法可以排除满足多个条件的过滤条件的记录。目标是从原始数据集中过滤掉不需要的记录。在下面的查询中,我只是想首先获得被排除的人口,只是为了尝试一下。非常感谢任何帮助。
Trade ID Trade Status Trade Type Portfolio
VER BondForward HD7
VER BondForward HD7
VER EQOPT HD7
VER EQOPT HD7
82689 VER FUTURE INCOMFLEX
82104 VER FUTURE CAPHEDGE
SELECT HedgeFile.[Trade ID], HedgeFile.[Trade Status], HedgeFile.[Trade Type],
HedgeFile.Portfolio
FROM HedgeFile
WHERE (HedgeFile.[Trade Status] = 'MAT')
OR HedgeFile.[Portfolio] IN ('ASSUME', 'HDLTV', 'INCOMFLEX', 'CAPHEDGE')
OR (HedgeFile.Hedgecode = 'WSP')
OR (HedgeFile.[Trade Type] <> 'FUTURE')
order by HedgeFile.[Trade Type]
【问题讨论】: