假设我们有一个表来存储用户最喜欢的图片,并带有一个复合主键对(UserId,PictureId)。书籍通常说在这种情况下您需要一个基于 (UserId, PictureId) 的复合索引,它通常在 WHERE 子句中显示为 (UserId=103 AND PictureId=1234)。但我认为 dababase 引擎应该足够聪明,可以分别使用基于两列的两个单独的索引。只需从每个索引中获取一组行号,然后找到两组中都存在的行号。这样,就不需要复合索引了。
那么,实际上数据库引擎可以做到这一点吗?