Oracleデータベースから複数のテーブルにヒットするかなり複雑なSQLクエリを実行しています。私は2つのキー列を持っており、このような種類の見える新しいテーブルからデータを持参しようとしています:SQL文のwhere句の条件文
key1 key2 date
001 2016-06-12
001 0001 2016-06-13
002 2016-06-14
003 2016-06-15
003 0001 2016-06-16
...
デフォルトことになっているすべての固有キー1値、にNULL KEY2レコードがありますkey2が存在しない場合私の現在のクエリは次のとおりです。
SELECT ..., (variables from other tables)
newtable.date
FROM ..., (other database tables)
newtable
WHERE ..., (whole bunch of table links)
AND newtable.key1 = keytable.key1
AND (newtable.key2 = keytable.key2 OR newtable.key2 IS NULL)
これは私のNEWTABLEですべてを提供しますが、私は、各キー1値の一意のレコードが必要です。私はクエリがNULLでないkey2レコードの日付を返すようにしたい場合は、NULLキー2レコードの日付を返します。
私はこれに関する助けに感謝します。
私たちはあなたの期待する結果を教えてください。
KEEP FIRST
をサブクエリーで入手できます。また、完全なソリューションが必要な場合は、他のテーブル情報が必要です。あなたが他のテーブルを必要としないと思うなら、簡単な問題を提供してください。 [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [** START **](http ://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を向上させ、より良い回答を得る方法を学ぼう。 –