【发布时间】:2019-07-27 14:11:40
【问题描述】:
我需要一个表来存储一些评分,在这个表中我有一个复合索引(user_id,post_id)和其他列来识别不同的评分系统。
user_id - bigint
post_id - bigint
type - varchar
...
Composite Index (user_id, post_id)
在这个表中,我没有主键,因为主键需要是唯一的,而 INDEX 不需要是唯一的,在我的情况下,唯一性是一个问题。
例如我可以有
INSERT INTO tbl_rate
(user_id,post_id,type)
VALUES
(24,1234,'like'),
(24,1234,'love'),
(24,1234,'other');
PRIMARY KEY 的缺失可能导致性能问题?我的表结构好还是需要改?
谢谢
【问题讨论】:
-
三个字段的组合就是你的PK
-
有趣...谢谢
-
如果不知道主要查询是什么,就无法真正判断索引。