5

是否有可能将像“1101”这样的字符串转换为 MySQL 中的 BIT(4) 等价物?我已经检查了 CONVERT/CAST 函数,但它们不允许这样做。

谢谢!

4

1 回答 1

3

您可以使用CONV()

CONV('1100', 2, 10) * 1

位域文字

例如

CREATE TABLE Table1 (bit_value BIT(4));

INSERT INTO Table1 VALUES (CONV('1100', 2, 10) * 1);
INSERT INTO Table1 VALUES (b'1101');

SELECT bit_value, 
       BIN(bit_value) bin_representation
  FROM Table1

输出:

| BIT_VALUE | BIN_REPRESENTATION |
----------------------------------
| 12 | 1100 |
| 13 | 1101 |

这是SQLFiddle演示

于 2013-08-05T08:04:01.080 回答