我们如何获取MySQL SET列作为整数偏移量列表?

我们可以借助MAKE_SET()函数获取MySQL SET列值作为整数偏移量列表。为了使其理解,我们正在创建一个名为“ set_testing”的表,如下所示:

mysql> Create table set_testing( id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, table SET('ABC','ABD','GHF') NOT NULL);

mysql> Insert into set_testing (table) values('1');

mysql> Insert into set_testing (table) values('2');

mysql> Insert into set_testing (table) values('3');

mysql> Insert into set_testing (table) values('4');

mysql> Select * from set_testing;
+----+---------+
| id | table   |
+----+---------+
| 1  | ABC     |
| 2  | ABD     |
| 3  | ABC,ABD |
| 4  | GHF     |
+----+---------+
4 rows in set (0.00 sec)

现在,以下查询将获取MySQL SET列作为整数偏移量的列表-

mysql> Select MAKE_SET(types+0,'1','2','3') as output from doctypes1;
+--------+
| output |
+--------+
| 1      |
| 2      |
| 1,2    |
| 3      |
+--------+
4 rows in set (0.00 sec)
猜你喜欢