テーブル内の1つの属性の値をチェックし、その値に基づいて異なる列のセットを選択するSQL Server 2005クエリを作成する必要があります。 どうすればいいですか?条件に基づいてselect文の列を選択する方法は?
'car'の 'type'属性の値が1,の場合、type = 1の場合、3つの列でselect 'query1'を実行します。 type = 2の場合、他の4つの列で別のselect 'query2'を実行します。
どうすればよいですか? 助けてください。
テーブル内の1つの属性の値をチェックし、その値に基づいて異なる列のセットを選択するSQL Server 2005クエリを作成する必要があります。 どうすればいいですか?条件に基づいてselect文の列を選択する方法は?
'car'の 'type'属性の値が1,の場合、type = 1の場合、3つの列でselect 'query1'を実行します。 type = 2の場合、他の4つの列で別のselect 'query2'を実行します。
どうすればよいですか? 助けてください。
Ifステートメントでストアドプロシージャを調べていると思います。 CASEは動作しますが、返される列数は変更できません。
SELECT
Col1 = CASE WHEN Type = 1 THEN (SELECT Null FROM T1)
ELSE (SELECT Col1 FROM T2) END
, Col2 = CASE WHEN Type = 1 THEN (SELECT Col1 FROM T1)
ELSE (SELECT Col2 FROM T2) END
, Col3 = CASE WHEN Type = 1 THEN (SELECT Col2 FROM T1)
ELSE (SELECT Col4 FROM T2) END
, Col4 = CASE WHEN Type = 1 THEN (SELECT Col3 FROM T1)
ELSE (SELECT Col4 FROM T2) END
FROM Cars
関連するすべてのテーブルのDDLを表示すると、おそらくより良い回答または別の(より良い方法で)アプローチが得られます。
「なぜ」私とin.spiteの答えがダウングレードされたのを知りたいです。 –