Mysql 选择“使用索引主倍数表”

Mysql 选择“使用索引主倍数表”,mysql,primary-key,distinct,Mysql,Primary Key,Distinct,我有两张桌子: 第一个表是带有id列的item,第二个表是带有标题列的item\u description 我希望从项目表中获得不同的行,并从项目描述表中获得标题 我做到了: SELECT distinct id, item_description.title FROM (item use index (PRIMARY)) 最好的要求是什么 问候 弗兰克好吧,据我所知,你想把这两张表合并起来。这是这样做的: SELECT distinct it.id, idesc.title FROM it

我有两张桌子:

第一个表是带有id列的
item
,第二个表是带有标题列的
item\u description
我希望从项目表中获得不同的行,并从
项目描述表中获得标题

我做到了:

SELECT  distinct id, item_description.title
FROM (item use index (PRIMARY))
最好的要求是什么

问候
弗兰克

好吧,据我所知,你想把这两张表合并起来。这是这样做的:

SELECT distinct it.id, idesc.title
FROM item it
JOIN item_description idesc ON it.id=idesc.item_id;

当然,您需要在
item\u description
表中设置一列,该列与
item
表中的
id
列相对应。

谢谢Simon,我知道如何连接这些表,但我希望使用主索引,因为还有许多其他表要连接。我不太明白您要做什么。主键是表的属性,通常引用单个属性(例如ID)。因此,当您使用上述语法连接两个表,并且其中一个连接属性恰好是主键的一部分时,Oracle将自动使用您的索引。您不需要指定此选项。或者您是指可以在联接中使用的SQL“USING”子句吗?下面是一个示例(不是Oracle数据库,但您会明白):