5

フィールドがIntegerあり、それを に分割する必要がありBits to the SQL(Firebird)ます。整数フィールドの各バイトは、新しいフィールドである必要があります。例えば:

Integer field: 7 = 00000111

Bit 1 field1: 1  
Bit 2 field2: 1  
Bit 3 field3: 1  
Bit 4 Field4: 0
Bit 5 Field5: 0
Bit 6 Field6: 0
Bit 7 Field7: 0
Bit 8 Field8: 0

Firebirdでこれを行う方法を知っている人はいますか?

4

1 に答える 1

3

BIN_AND関数を使用します。

SELECT 
   bin_and(field, 1) as bit1, 
   bin_and(field, 2) as bit2, 
   bin_and(field, 4) as bit3,
   bin_and(field, 8) as bit4,
   ... 
FROM T
于 2013-06-13T15:15:08.273 に答える