0
ここに私の状況ではうまくいかなかったたくさんのフォーラムがありました。私は以下の結果と新しい列を返すselect文を作成する必要があり値に基づいて列をグループ化し、1つの値に連結しますか?
Col_1, Col_2, Col_3, Col_n TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE TRUE FALSE FALSE TRUE
があります。つまり
New_Column Col_1 Col_2, Col_3 Col_1, Col_n
を、カラムがTrue
であれば、その後に列名を追加します私の新しいコラムだから私の結果セットが次のようになります。
myID, myName, myDesc, Col_1, Col_2, Col_3, Col_n, New_Column
私が試した:
SELECT
myID,
myName,
myDesc,
((CASE WHEN col_1 = 'TRUE' THEN 'col_1' END) + ', ' + (CASE WHEN col_2 = 'TRUE' THEN 'col_2' END) + ', ' + (CASE WHEN col_3 = 'TRUE' THEN 'col_3' END) + ', ' + (CASE WHEN col_n = 'TRUE' THEN 'col_n' END)) as New_Column
FROM myTable
しかし、結果セットが間違っていました。私に与えられたデザインで必要な結果セットを得るにはどうすればよいですか?
私は結果は私が次のことを意味間違っていると言う:
myID, myName, myDesc, Col_1, Col_2, Col_3, Col_n, New_Column
Data, Data, TRUE, False, false, true, Null
Data, Data, false, Col_2, Col_3, false, Null
Data, Data, Col_1, Null, Null, Col_n, Col_1Col_2Col_3Col_n
これは私が期待するものである:
myID, myName, myDesc, Col_1, Col_2, Col_3, Col_n, New_Column
Data, data, Col_1, Col_2, NULL, Col_N, Col_1Col_2Col_N
どのように間違っていますか? –
何を得ましたか? – muratgu
...まず、条件付きではないので、彼女はおそらく好きな数よりも多くのコンマを得るつもりです... MySQLでは、 'group_concat'は動作しますが、MS-SQLでは動作しないと思いますサーバ。 – BRFennPocock