現在、MySQL の結合に苦労しています。
users、gifts、users_gifts の 3 つのテーブルがあります。
- Users
- id
- username
- email
- password
- Gifts
- id
- gift
- value
- users_gifts
- uid
- gift_id
すべてのギフトを返品したいのですが、ユーザーが既に送信したギフトは含まれていません。したがって、利用可能なギフトが次の場合:
card
heart
necklace
perfume
ユーザーがすでにハートを送信している場合、返されるギフトは次のとおりです。
card
necklace
perfume
次の結合を試みましたが、何らかの理由で目的の効果が得られません。
SELECT *
FROM gifts
JOIN users_gifts
ON gifts.id = user_gifts.gift_id
WHERE users_gifts.uid != 3
... 現在のユーザーのユーザー ID が 3 であると仮定します。
ここで何か不足していますか、それとも SQL にエラーがありますか?