我目前正在为 MySQL 加入而苦苦挣扎。
我有 3 个表,用户、礼物和 users_gifts。
- 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 有任何错误?