私はLH1、LH2、LH3、RH1、RH2、RH3のような複数のビット列を持つテーブルを持っています。 (これは一例であり、元のデータベースには20ビット以上の列があります.LHは左手を意味し、RHは右手を意味します)右目、左目、右足、左足などと同じ方法SQLの複数のビット値に基づいて文字列を取得
データ、デザイン、出力内容を表示する下の画像に表示されます。
DDL:今、私はカンマで区切られた文字列を取得したいそれらのビットの値に基づいて
CREATE TABLE #LeftRight
(
LH1 BIT,
LH2 BIT,
LH3 BIT,
RH1 BIT,
RH2 BIT,
RH3 BIT
)
INSERT INTO #LeftRight
(LH1, LH2, LH3, RH1, RH2, RH3)
VALUES (1,1,0,1,1,0), (0,1,0,0,0,1), (1,0,1,1,0,1)
SELECT *
FROM #LeftRight
DROP TABLE #LeftRight
。
私は下のリンクを通過したが、それはここで
https://dba.stackexchange.com/questions/112408/join-with-comma-separated-values-in-sql-server
私はこれを見て始めましたが、何かする必要があるので、他の誰かが使用できるようにDDLを追加しました。 – Tanner
なぜビットを単一のLH/RH列に格納しないのですか?あなたの人生は、複数のビットフィールドよりもはるかに優れています。以下の解決策は*動作しますが、20列の悪夢*になります。 – Jamiec
Nullを許可するのを削除することを検討しますか? Null値が使用されている状況がない場合は、コードの管理と書き込みが容易です。おそらくデフォルトは0でしょうか? – cloudsafe