sql >> データベース >  >> RDS >> Sqlserver

SQL で、ビットマスク合計の値をカンマ区切りの文字列に分割するにはどうすればよいですか

    これは機能するはずです:

    SELECT id, name, bitMaskValue,
        SUBSTRING(
                CASE WHEN bitMaskValue & 1 = 1 THEN ',1' ELSE '' END
              + CASE WHEN bitMaskValue & 2 = 2 THEN ',2' ELSE '' END
              + CASE WHEN bitMaskValue & 4 = 4 THEN ',4' ELSE '' END
              + CASE WHEN bitMaskValue & 8 = 8 THEN ',8' ELSE '' END
            , 2, 64) As [values]
    FROM yourTable
    


    1. PostgreSQLで英数字以外の文字を含む行を返す2つの方法

    2. mysqlの複数のインスタンス

    3. 日付を長持ちさせるために休止状態にする

    4. MySQLテーブルをドロップできません