1
jjdd 2014-09-15 14:54:31 +08:00
1,在book_tag表中通过tag_id查出所以的book_id
2,要查每本书的tag_name,在book_tag表通过book_id查出所有的tag_id,再在tag表通过tag_id查出tag_name book_tag表里面存tag_name字段干嘛? |
2
kmvan 2014-09-15 15:02:54 +08:00 via Android
参考一下wp的也不错
|
5
geew OP @jjdd 对的 tag_name 就是冗余数据 在不支持tag修改的情况下 这个是没问题的 但现在讨论的不是这个问题吧 是那个1+n的问题。。。
|
6
shyrock 2014-09-15 18:23:42 +08:00
select tag_name from book_tag where book_id in (select book_id from book_tag where tag_id = 'xxx')
是这个意思吧?看看MySQL自己能优化吗。。。 |
7
revlis7 2014-09-16 09:56:57 +08:00 1
我的想法是,在book里增加一个字段做tag_name的冗余,而不是在book_tag表里做
用计划任务定期根据book_tag里的关系去更新book表中新增的tag_name字段 前提是如果对实时性要求不高,并且tag更新不频繁的话。 |