Sqlserver
 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какъв трябва да бъде преобразуваният тип данни на съответната колона в компонента на потока от данни на SSIS Data Converter?

  2. Как да конфигурирате поща на база данни в SQL Server

  3. Как да съхранявате и извличате изображения в база данни на sql сървър чрез VB.NET

  4. SQL - Как да направя заявка за повторно приемане в TSQL?

  5. Използване на IF EXISTS с CTE