mysql - 博客文章標(biāo)簽表結(jié)構(gòu)設(shè)計(jì)問(wèn)題
問(wèn)題描述
感覺(jué)segmentfault站點(diǎn)設(shè)計(jì)的標(biāo)簽還是很不錯(cuò)的,正在寫(xiě)一個(gè)博客平臺(tái),想做個(gè)文章標(biāo)簽,現(xiàn)在表設(shè)計(jì)如下:
文章表(articles)
idtitletags1xxx1,3,42aaa2,43bbb3,5標(biāo)簽表(tags)
idname1php2javascript3mysql4css35html5假如信息結(jié)構(gòu)如上面,那么怎么取出每篇文章的詳細(xì)信息呢?上面的表設(shè)計(jì)可以實(shí)現(xiàn)嗎?
我查了下本站的相關(guān)問(wèn)題,有人說(shuō)再加入第三章標(biāo)簽文章關(guān)聯(lián)表,如下面
標(biāo)簽關(guān)聯(lián)表(tag_links) tid是tags表id,aid是文章articles表id
idtidaid111231241那么這個(gè)有怎么查出文章的詳細(xì)信息呢?
問(wèn)題解答
回答1:一般的按照下面的方式來(lái)建表的,查詢?cè)敿?xì)信息的話,你可以先根據(jù)文章的id文章表里面查文章的一些信息,然后再根據(jù)文章id去標(biāo)簽表和文章標(biāo)簽關(guān)聯(lián)表join查詢出,標(biāo)簽數(shù)據(jù),最后把這兩個(gè)數(shù)組合并下就好了。
有點(diǎn)小小的建議:你可以把文章表進(jìn)行水平分割下,你可以把內(nèi)容字段拿出來(lái)單獨(dú)做一張表,用id進(jìn)行關(guān)鍵,這樣做在數(shù)據(jù)量很大的時(shí)候,效率比較好,
這些是我的個(gè)人看法,有不對(duì)的地方,還望大神們指點(diǎn)
回答2:我也剛好在寫(xiě)博客,也遇到了這個(gè)問(wèn)題,3個(gè)表關(guān)聯(lián),現(xiàn)在sql語(yǔ)句遇到了問(wèn)題求大兄弟的Sql語(yǔ)句
相關(guān)文章:
1. node.js - nodejs debug問(wèn)題2. docker-machine添加一個(gè)已有的docker主機(jī)問(wèn)題3. golang - 用IDE看docker源碼時(shí)的小問(wèn)題4. docker綁定了nginx端口 外部訪問(wèn)不到5. docker - 如何修改運(yùn)行中容器的配置6. docker images顯示的鏡像過(guò)多,狗眼被亮瞎了,怎么辦?7. debian - docker依賴的aufs-tools源碼哪里可以找到???8. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????9. docker網(wǎng)絡(luò)端口映射,沒(méi)有方便點(diǎn)的操作方法么?10. docker-compose中volumes的問(wèn)題
