Createtableset_testing(idINTUNSIGNEDNOTNULLPRIMARYKEYAUTO_INCREMENT,tableSET('ABC','ABD','GHF')NOTNULL);QueryOK,0r"/> Createtableset_testing(idINTUNSIGNEDNOTNULLPRIMARYKEYAUTO_INCREMENT,tableSET('ABC','ABD','GHF')NOTNULL);QueryOK,0r">

Maison >base de données >tutoriel mysql >Comment pouvons-nous obtenir la colonne MySQL SET sous forme de liste de décalages entiers ?

Comment pouvons-nous obtenir la colonne MySQL SET sous forme de liste de décalages entiers ?

王林
王林avant
2023-08-25 19:21:031426parcourir

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

Avec l'aide de la fonction MAKE_SET(), nous pouvons obtenir la valeur de la colonne MySQL SET sous la forme d'une liste de décalages entiers. Pour faciliter la compréhension, créons une table nommée « set_testing » comme indiqué ci-dessous -

mysql> Create table set_testing( id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, table SET('ABC','ABD','GHF') NOT NULL);
Query OK, 0 rows affected (0.08 sec)

mysql> Insert into set_testing (table) values('1');
Query OK, 1 row affected (0.06 sec)

mysql> Insert into set_testing (table) values('2');
Query OK, 1 row affected (0.06 sec)

mysql> Insert into set_testing (table) values('3');
Query OK, 1 row affected (0.02 sec)

mysql> Insert into set_testing (table) values('4');
Query OK, 1 row affected (0.02 sec)

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

Maintenant, la requête suivante obtiendra la colonne MySQL SET sous la forme d'une liste de décalages entiers -

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)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer