感觉segmentfault站点设计的标签还是很不错的,正在写一个博客平台,想做个文章标签,现在表设计如下:
文章表(articles)
id | title | tags |
---|---|---|
1 | xxx | 1,3,4 |
2 | aaa | 2,4 |
3 | bbb | 3,5 |
标签表(tags)
id | name |
---|---|
1 | php |
2 | javascript |
3 | mysql |
4 | css3 |
5 | html5 |
假如信息结构如上面,那么怎么取出每篇文章的详细信息呢?上面的表设计可以实现吗?
我查了下本站的相关问题,有人说再加入第三章标签文章关联表,如下面
标签关联表(tag_links) tid
是tags
表id
,aid
是文章articles
表id
id | tid | aid |
---|---|---|
1 | 1 | 1 |
2 | 3 | 1 |
2 | 4 | 1 |
那么这个有怎么查出文章的详细信息呢?
一般的按照下面的方式來建表的,查詢詳細信息的話,你可以先根據文章的id文章表裡面查文章的一些信息,然後再根據文章id去標籤表和文章標籤關聯表join查詢出,標籤數據,最後把這兩個數字組合併下就好了。
有點小小的建議:你可以把文章表進行水平分割下,你可以把內容字段拿出來單獨做一張表,用id進行關鍵,這樣做在數據量很大的時候,效率比較好,
這些是我的個人看法,有不對的地方,還望大神們指點
我也剛好在寫博客,也遇到了這個問題,3個表關聯,現在sql語句遇到了問題
求大兄弟的Sql語句