[英]How do I add a one-to-one relationship in MYSQL?
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| pid | varchar(99) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.00 sec)
+-------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+-------+
| pid | varchar(2000) | YES | | NULL | |
| recid | varchar(2000) | YES | | NULL | |
+-------+---------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
這是我的桌子。 pid只是用戶的ID。 “ recid”是該用戶的推薦歌曲。
我希望列出pid的清單,然后為每個人推薦歌曲。 當然,在我的第二張表中,(pid,recid)是唯一鍵。
如何對此進行一對一查詢?
# retrieve all songs associated to a given user
SELECT songs.*
FROM user
INNER JOIN songs ON (user.pid = songs.pid)
WHERE user.pid = ?
您可以使用以下查詢創建FK:
ALTER TABLE `foo`
ADD FOREIGN KEY (`bar_id`) REFERENCES `bar` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE
並查看mysql文檔 。 還要注意,Mysql僅在InnoDB引擎中支持外鍵。
您想使用聯接(內部)來獲取信息。 這是我使用過的參考資料,對您有所幫助。 加入
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.