COMPOSITE KEY 是指使用多个列作为联合主键或唯一索引来保证数据的唯一性。下面是一个使用 COMPOSITE KEY 的 MySQL 表的示例:
CREATE TABLE user (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
password CHAR(32) NOT NULL,
PRIMARY KEY (id),
UNIQUE KEY email_password (email, password)
);
在上述示例中,user
表有一个自增的 id
列作为主键,并且还创建了一个名为 email_password
的唯一索引,该索引由 email
和 password
两列组成。这样可以确保每个用户的邮箱和密码都是唯一的。
如果需要查询某个特定用户的信息,可以使用以下 SQL 语句:
SELECT * FROM user WHERE email = 'example@example.com' AND password = MD5('password');
此时 MySQL 可以利用 email_password
索引来加速查询,避免全表扫描。
总之,在需要保证数据唯一性和提高查询效率的情况下,可以考虑使用 COMPOSITE KEY。