数十回試行した後も、まだ間違った結果が得られたので、助けを求めたほうがよいと思いました。
テーブル:
labels
id, user_id, name
messages_labels
id, message_id, label_id
labels.id
を指すmessage_labels.label_id
message-id と user_id を指定して未使用のラベルを正しい結果にするにはどうすればよいですか? 未使用のラベルとは、特定のメッセージ ID のエントリがないラベルを意味しmessage_labels
、基本的に、このメッセージでまだ使用されていないメッセージに追加するラベルのみを選択します。
これは、次のような意味です...
SELECT l.id, l.name
FROM labels l
INNER/LEFT JOIN messages_labels ml ON (l.id=ml.label_id)
WHERE... user_id=:user_id ...
... and `message_id <> :message_id`
??