簡體   English   中英

mysql Find_in_set更好或單個查詢檢查更好

[英]mysql Find_in_set is better or single query check is better

我有mysql find_in_set的問題,因為在名為menu_table的表中,我想存儲以下數據。 但我想將menu_ids的值與另一個表的menu_id匹配

mt_id menu_ids
---------------
 1    4,5,6,
 2    7,8,
 or 
mt_id menu_ids
----------
1      4
2      5

然后我不明白如何存儲值,哪個是檢查menu_ids的更好的解決方案?

不要存儲以逗號分隔的值。 這是一個糟糕的架構設計。 我建議你像這樣設計表格,

菜單表

  • MenuID(PK)
  • OtherColumns ...

其他表

  • MTID(PK)
  • OtherColumns ...

Menu_Other表

  • MTID(帶有MenuID列的PK)
  • MenuID(FK)

示例記錄

菜單表

MenuID  OtherColumn
1       aaaa
2       bbbb

其他表

MTID    OtherColumns
1       a   
2       b
3       c
4       d
5       e
6       f

Menu_Other表

MenuID  MTID    
1       1
1       2
2       3
2       4
2       5

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM