想实现用户之间的互相关注的功能,所以在User类下面设置了两个User自身的多对多关系,分别表示用户的关注者和被关注者,生成两个中间表用来存放User的id。 貌似多对多的关系很少用到,在查询的过程中也不是很好用,有什么比较好的实现方法吗?
不是很清楚为什么需要两个中间表。
感觉一个中间表足够了:字段1和字段2分别表示关注者和被关注者。 jack, rose (jack关注rose) rose, jack (rose关注jack) 两条代表都存在则代表jack和rose互相关注。
查询的话,可以考虑redis等缓存,第一次去数据库会慢点,但整个用户会话的过程中用到内存数据库的话效率会很高。
欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。 温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。