面试题答案
一键面试创建表的SQL语句
CREATE TABLE user_properties (
user_id INT PRIMARY KEY AUTO_INCREMENT,
properties JSON
);
优势说明
- 灵活性:属性数量和类型不确定的情况下,JSON类型的动态列
properties
可以轻松存储各种格式的数据,无需事先定义每个属性的列。例如,可以存储 {"name": "John", "age": 30, "email": "john@example.com"} 这样不同类型属性的组合。 - 扩展性:随着业务发展,如果需要新增用户属性,无需修改表结构,直接在JSON对象中添加新的键值对即可。
- 存储效率:相比于为每个可能的属性都创建单独的列,JSON动态列在存储稀疏数据时更为高效,避免了大量空值占用空间。