作者dinos (守护神)
看板PHP
标题Re: [请益] 有点复杂的问题(内详)
时间Wed Jul 18 14:22:07 2007
※ 引述《derekhsu (断头不过碗大疤)》之铭言:
: ※ 引述《dinos (守护神)》之铭言:
: : 顺道问一下,若是 relation 超过 64 种,那 relation 要怎麽处理比较好呢?
: : 用 char binary 吗?
: 有一个比较快的方法,直接作第三阶正规化把Ralational Table建出来:
: 这需要三个Table,例:
: 1.PEOPLE 纪录人员
: [ID], NAME, .....
: 2.RELATION 记录关系的种类
: [ID], RELATION
: 3.RELATION_PEOPLE 纪录人与人间关系的关联资料表
: [PEOPLE_ID_SOURCE].[PEOPLE_ID_TARGET],[RELATION_ID]
: 建出来的表比较复杂,但其实是比较符合正规化原则,也比较好进行操作的
但是当要输出一份清单时,指另会变得很麻烦吧
ex: 输出与小明有同学关系的通讯录清单
===================
小华 02-23456789
小莉 03-4567909
..................
===================
又或输出一份所有关系人的清单
===================
小明 小华(同学)、小莉(同学,亲戚)、小张(同事)
小莉 小明(同学,亲戚)、小张(同事)
小华 小张(同学)、小明(同学)
小张 小莉(同事)、小华(同学)
..................
===================
--
徵一起游泳的朋友
地点: 内湖焚化炉游泳池
http://www.nhrip.tcg.gov.tw/07_faq/01.htm
(Wed. Fri. Sun.) or (Tue. Thu. Sat.) 5:20 A.M.
意者请站内寄信给 dinos
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.158.15
1F:推 knockout:语法可能麻烦了点,但降子做程式效能比较好~~ :) 07/18 14:33
2F:推 pakker:正规化後效能变好??? 正规化只是减少资料重覆吧 07/18 19:28
3F:→ pakker:一个栏位用bit处理 和一堆table互相join 差很多吧 07/18 19:29
4F:推 knockout:比起有关连性的TABLE 做JOIN 跟一个TABLE做条件式搜寻~~ 07/19 01:08
5F:→ knockout:前者 快多了 ... 07/19 01:09
6F:推 pakker:join时也是要对table作scan, 07/28 23:39
7F:→ pakker:这样反而是m*n的事情 07/28 23:40