我有以下表格:複雜的M:N與MySQL表關係
表:新聞
領域:UID,標題,類別,日期時間,隱藏,刪除
表 :categories_mn
字段:uid_local,uid_foreign
表:類
領域:UID,parentcategory,名稱,圖像
每一個新聞條目都被分配到幾個不同的類別。
什麼我試着去實現的是,以獲得最新3日消息,並顯示該項目被分配到所有類別的圖像(且分配有一個圖片)
事情是這樣的:
title | catimages |
------------------------------
Post 7 | cat1.jpg |
Post 6 | |
Post 5 | cat1.jpg,cat3.jpg |
------------------------------
這是我到目前爲止有:
SELECT title, categories
FROM news
WHERE deleted = 0 AND hidden = 0 AND
ORDER BY datetime DESC
LIMIT 3;
我不是很有經驗的SQL。請幫忙。
什麼是「類別」字段?還有什麼是'uid_local'和'uid_foreign'? – Hast 2013-03-11 17:52:48
'categories'字段是M:N關係表的uid_local。另一個字段是類別表的uid。 – 2013-03-11 18:04:42
@Dbugger如果你想拼接你的catimages,也就是說如果你想得到cat1.jpg,cat3.jpg,請使用group_concat。查看http://stackoverflow.com/questions/276927/can-i-concatenate-multiple-mysql-rows-into-one-field – 2013-03-11 18:24:40