用mysql定义一个enum表(性别:男女保密) 要求:选择自己的性别并显示对应字符串和数值。 2. 定义一个集合表 (set 要求:爱好表 集合数据6个) 要求:a选择自己的爱好并显示对应字符串和数值 b.计算此表中爱好的可以选择种类数量
时间: 2024-05-01 19:21:08 浏览: 8
1. 定义性别表 enum_gender:
```mysql
CREATE TABLE enum_gender (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
gender ENUM('male', 'female', 'secret') NOT NULL
);
```
在该表中,gender 列使用了 ENUM 类型,其中 'male', 'female', 'secret' 分别代表男、女、保密三种性别。
插入一些数据:
```mysql
INSERT INTO enum_gender (gender) VALUES ('male'), ('female'), ('secret');
```
选择自己的性别并显示对应字符串和数值:
```mysql
SELECT id, gender FROM enum_gender WHERE gender = 'male';
```
上述语句将返回 id 和 gender 两列,其中 id 为自增主键,gender 为选择的性别字符串。如果选择男性,将返回 id 为男性对应的数值,gender 为 'male'。
2. 定义爱好表 set_hobby:
```mysql
CREATE TABLE set_hobby (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
hobby SET('reading', 'writing', 'singing', 'dancing', 'painting', 'swimming') NOT NULL
);
```
在该表中,hobby 列使用了 SET 类型,其中 'reading', 'writing', 'singing', 'dancing', 'painting', 'swimming' 分别代表六种爱好。
插入一些数据:
```mysql
INSERT INTO set_hobby (hobby) VALUES ('reading,singing,painting'), ('writing,swimming'), ('dancing,painting');
```
选择自己的爱好并显示对应字符串和数值:
```mysql
SELECT id, hobby FROM set_hobby WHERE FIND_IN_SET('reading', hobby) > 0;
```
上述语句将返回 id 和 hobby 两列,其中 id 为自增主键,hobby 为选择的爱好字符串。如果选择阅读,将返回 id 为对应的数值,hobby 为 'reading,singing,painting'。
计算此表中爱好的可以选择种类数量:
```mysql
SELECT COUNT(*) FROM set_hobby;
```
上述语句将返回 set_hobby 表中的行数,也就是可以选择的爱好种类数量。