次のようなSQLのテーブルがあります。
[
ここで、2つの条件に基づいた結果のテーブルが必要です。
Prev_trans_idはtransactions_IDと一致する必要があります
Amount値のmodが等しくないエントリのみが来る必要があります。
結果のテーブルは次のようになります。
したがって、結果のテーブルでは、量のmodが同じであるため、Transcation_IDが104の行は必要ありません。1ドルが支払われ、1ドルが返金されました。
SQLを初めて使用するため、前半は実行できましたが、後半は実行できませんでした。これは最初の部分の私のコードです:
select * from sample_table
where prev_trans_id in
(select transaction_id from sample_table)
2番目の条件も同じクエリに組み込むことができれば、非常に役立ちます。
使用しJOIN
、ではありませんIN
SELECT t1.*
FROM sample_table AS t1
JOIN sample_table AS t2
ON t1.prev_trans_id = t2.transaction_id AND t1.amount != -1 * t2.amount
ところで、それmod
は金額ではなく、比較したい金額の否定です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加