MySQL选择位域,在前面选择0值

时间:2012-10-31 09:41:51

标签: mysql

我的数据库中有一行包含位,它是4位字符长的位类型,位(4)。在这个字段中,我的所有值都存储如下:

0001
0010
0100
1111

我试图选择并获得精确的表示,前面的0为1,但没有运气。我试图从位字段中选择这样的值:

SELECT BIN(field+0) FROM `table` WHERE value=0001;

the result is: 1, how can i obtain 0001;

我需要这样的值,因为我想在PHP中进行按位操作。提前谢谢。

2 个答案:

答案 0 :(得分:1)

在mysql中使用 LPAD()

SELECT LPAD(field,4,'0') 
FROM `table` WHERE value=0001;

答案 1 :(得分:0)

试试这个:

select right(concat(field,'0'),4) from yourtable where bcol='0001'