私のテーブル:
CREATE TABLE `binary` (
`binaryid` int(15) unsigned NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`binaryid`)
);
CREATE TABLE `binarycollection` (
`binaryid` int(10) unsigned NOT NULL,
`collectionid` int(10) unsigned NOT NULL,
UNIQUE KEY `collectionid` (`collectionid`,`binaryid`),
KEY `binaryid` (`binaryid`)
);
バイナリテーブルには、binaryidに対して1つのレコードしか存在できません。binarycollectionテーブルは、バイナリを複数のコレクションに関連付けます。
私がする必要があるのは、binarycollectionに正確に1つの関係があるbinaryのすべての行を選択するクエリを作成することです。
したがって、例を挙げます。
binary:
1
2
3
4
5
6
7
binarycollection:
(binaryid collectionid)
1 1
2 1
3 1
3 2
4 1
4 2
5 2
6 2
バイナリID1、2、5、および6を返す必要があります。
どんな助けでも大歓迎です。:)
ps。これは効率的である必要があり、テーブルには数百万の行が含まれています。