Mysql

如何設計表格以允許將記錄標記為彼此相關?

  • October 29, 2020

我的網路應用程序的主 MySQL 表有數万行。假設它有 2 列:ID、內容。

我正在嘗試設計一個允許將行標記為彼此相關的新功能。

顯然我可以添加第三列:Related_IDs。它可以是 JSON 數組,也可以是簡單的 CSV 字元串。

但這感覺不對。我需要將一組 N 行的每一行的 Related_IDs 欄位更新為組中除自身之外的所有行的 ID 的逗號分隔列表。每次這些記錄中的任何一個變得不相關時,我都需要遍歷該組並為每個記錄清理該欄位。

什麼是更聰明的方法?

橋牌桌

related_id  Related_TO_ID
    13           2
    13          12

如果1-->2 is equal to 2-->1您需要一排,則需要兩排。

現在您可以獲得與 13 相關的所有 id

如果你想排除一些口糧船,你可以添加一列,表明 13 與 42 無關

SELECT Related_TO_ID FROM brdgetable WHERE related_id   = 13

為什麼您永遠不應該將數據保存在分隔列中,您可以在此處閱讀

引用自:https://dba.stackexchange.com/questions/278908