对于集合来说,能不能通过索引(数字)的方式同时插入多个字符?

来源:2-23 测试ENUM和SET类型

幕名求学

2020-02-09 15:45:37

#这个表是这样的

CREATE TABLE test_set(

  a SET('A','B','C','D','E','F')

);

按照网上的说法:

例如如果想插入‘A’,‘C’,‘D’,它们所对应的索引是1,3,4。所以插入的应该是它们的索引之和1+3+4=8

即:INSERT test_set(a)VALUES(‘8’);

可运行结果是:

http://img.mukewang.com/climg/5e3fb7cc0942051103170283.jpg

http://img.mukewang.com/climg/5e3fb7ff097d0c2703300298.jpg

我本意想插入'A','C','D',结果插入的只是D,这是为什么呢?

写回答

1回答

好帮手慕小尤

2020-02-09

同学你好,set通过数字插入时,set的每个选项值对应一个数字,依次是1,2,4,8,16...,最多有64个选项,而8对应的是D。如果同学想要添加多个字符,则可以使用逗号分隔,也可以使用多个选项的数字之和(比如:1+2+4=7)。

如果解答了同学的疑问,望采纳~祝学习愉快~

2

0 学习 · 8016 问题

查看课程