列 (この時点では、その列でどのような値がどのように使用されているかを変更することはできません) が同じ値を使用していない場所で結合する必要がある 2 つのテーブルがあります。したがって、最初のテーブルの列の値に応じて、2 番目のテーブルで特定の値を結合/選択する必要があります。これが私がやろうとしていることの例です(明らかにうまくいきません):
SELECT Alert.*, Comments.Comment FROM
Alert
LEFT OUTER JOIN Comments ON Comments.ObjectId = Alert.ObjectId AND
CASE
WHEN Alert.ObjectType = 'U' THEN Comments.ObjectType = 'USER'
WHEN Alert.ObjectType = 'E' THEN Comments.ObjectType = 'EVENT'
END CASE
そのため、Alert テーブルのすべてが必要であり、Comments テーブルに対応するレコードがあれば、それらも必要です。ただし、適切な/一致する ObjectType の場合のみ。
CASE と IF の両方を使用してこれを試しましたが、うまくいかないようです。このようなことは可能ですか?