는이 같은 테이블이 있습니다변수에 비트 데이터 유형 값을 할당하려면 어떻게합니까?
// mytable
+---------+-------------+
| id | bitmap |
+---------+-------------+
| int(11) | BIT(10) |
+---------+-------------+
| 1 | 01111111000 |
| 2 | 01111111111 |
| 3 | 00000000001 |
+---------+-------------+
을 그리고 이들은 현재와 예상 출력의 몇 가지 예입니다 :
예 1 :
SELECT bitmap INTO @var FROM mytable WHERE id = 1;
SELECT @var;
/* Current output: 1016
Expected output: 01111111000
*/
예 2 :
SELECT bitmap INTO @var FROM mytable WHERE id = 2;
SELECT @var;
/* Current output: 1023
Expected output: 01111111111
*/
예 3 : 음
SELECT bitmap INTO @var FROM mytable WHERE id = 3;
SELECT @var;
/* Current output: 1
Expected output: 00000000001
*/
나는 그렇게 할 수있는 방법을? 보시다시피, 해당 변수 해당 열의 원래 비트 값을 할당하려면 노력하고있어 (하지만 거기에 변환이있는 것, 어떻게 피할 수 있습니까?). @var
에 이진 값이 포함되어 있지 않은 이유를 정말로 모르겠습니다.
당신은 ** ** SQL 바이올린을 공유 할 수 있습니까? – 1000111