Mysql:bit类型的查询与插入
mysql有种字段类型是bit。
1.如何插入呢?
它的插入必须采用:
可以使用b‘value’符号写位字段值。value是一个用0和1写成的二进制值。
mysql>
create
table
an_bit
(id
bit(8));
Query
OK,
0
rows
affected
(0.00
sec)
mysql>
insert
into
an_bit
values
(11);
Query
OK,
1
row
affected
(0.00
sec)
虽然可以插入,但是实际插入的数值是11(十进制),不是3(十进制)。
mysql>
insert
into
an_bit
values
(b’11′)
;
Query
OK,
1
row
affected
(0.00
sec)
这才是正确的插入方法。
插入的值是3(十进制)
2.
如何查询呢?
mysql>
select
*
from
an_bit;
+——+
|
id
|
+——+
|
|
|
|
+——+
这样是不对的,看不到东西
mysql>
select
id+0
from
an_bit;
+——+
|
id+0
|
+——+
|
11
|
|
3
|
+——+
这是正确的,可以看到十进制的值。
mysql>
select
bin(id+0)
from
an_bit;
+———–+
|
bin(id+0)
|
+———–+
|
1011
|
|
11
|
+———–+
这是二进制的值
mysql>
select
oct(id+0)
from
an_bit;
+———–+
|
oct(id+0)
|
+———–+
|
13
|
|
3
|
+———–+
这是八进制的值
mysql>
select
hex(id+0)
from
an_bit;
+———–+
|
hex(id+0)
|
+———–+
|
B
|
|
3
|
+———–+
这是十六进制的值
mysql有种字段类型是bit。
1.如何插入呢?
它的插入必须采用:
可以使用b‘value’符号写位字段值。value是一个用0和1写成的二进制值。
mysql>
Query
mysql>
Query
虽然可以插入,但是实际插入的数值是11(十进制),不是3(十进制)。
mysql>
Query
这才是正确的插入方法。
2.
mysql>
+——+
|
+——+
|
|
|
+——+
这样是不对的,看不到东西
mysql>
+——+
|
+——+
|
|
+——+
这是正确的,可以看到十进制的值。
mysql>
+———–+
|
+———–+
|
|
+———–+
这是二进制的值
mysql>
+———–+
|
+———–+
|
|
+———–+
这是八进制的值
mysql>
+———–+
|
+———–+
|
|
+———–+
这是十六进制的值