私はWebIで書き直す必要のあるOracleクエリーを持っています。私はOracleから「存在しない」と模倣する方法を理解できません。指定された時間枠内に取引日付がある場合はクエリがオブジェクトを返しますが、その時間枠より前の日付がある場合は返しません。つまり、次のようなものです:bobj/webi mimc oracleが存在しません
SELECT Object_Number
, Transaction_Date
, <other fields>
FROM Object_Table
INNER JOIN Transaction_Table ON Transaction_Table.Key = Object_Table.Key
WHERE Transaction_Table.Date BETWEEN '2017-07-01' AND '2017-01-31'
AND NOT EXISTS (SELECT 1 FROM Transaction_Table
WHERE Transaction_Table.Key = Object_table.Key
AND Transaction_Table.Date < '2017-07-01'
)
もう少し複雑ですが、それは良い近似です。
私はサブクエリフィルタを使うことができると思っていましたが、元のObject_Numberにそのサブクエリを結び付ける方法や「存在しない」方法を模倣する方法はわかりません。私は、宇宙のレコード複合体がtransaction_date(基本的にObject_TableとTransaction_TableのJOINです)を含んでいるので、「NOT IN」が「NOT EXISTS」と同じではないと思います。私の現在のレコード(範囲内の日付)にある日付が範囲外ではないことを示します。私はこのフィルタサブクエリがもっと多くのことをすることができると確信していますが、私はそれを理解していません。
複雑なフィルタの例はありません。(「複雑」と主張しているものが多数ありますが、3つの「AND」ステートメントがあります) - oooohhhh!
私はそれが宇宙[MIN(Transaction_Date)を使用して]で新しい次元で達成できると思いますが、そのパスは私には利用できません。
このタイプの基本機能がないと(少なくともOracle SQLでは基本的ですが)、このWebIツールは厳しく制限されています。