私は他のいくつかの同様の質問を見てきましたが、どれも私が見つけた特定の状況に適合しません.
私はSQLの比較的初心者です。
レポートを作成するクエリを作成しています。この DB への読み取り専用アクセス権があります。3 つの行を 1 つの行に結合しようとしています。読み取りアクセスのみが必要な方法はすべて機能します。
そうは言っても、私が持っている 3 つの行は、非常に長いサブクエリによって取得されました。外殻は次のとおりです。
SELECT Availability,
Start_Date,
End_Date
FROM (
-- long subquery goes here (it is several UNION ALLs)
...
) AS dual
行は次のとおりです。
Availability | Start_Date | End_Date
-------------------------------------
99.983 | NULL | NULL
NULL | 1/10/2013 | NULL
NULL | NULL | 1/28/2013
私がやろうとしているのは、次のように 3 つの行を 1 つの行に結合することです。
Availability | Start_Date | End_Date
-------------------------------------
99.983 | 1/10/2013 | 1/28/2013
COALESCE()を使用してそれらを 1 つの列に入れることができることは承知していますが、3 つの別々の列を保持することをお勧めします。
ストアド プロシージャを作成または使用できません。
これを行うことは可能ですか?一般的なケースの例を教えてください。