作者pakker (找寻蔚蓝天空)
看板PHP
标题Re: [请益] 有点复杂的问题(内详)
时间Tue Jul 17 21:58:26 2007
※ 引述《chweng ()》之铭言:
: 王小明 同学 仇人 朋友 家人
: 李小英 同学 仇人 朋友 家人
: 陈小华 同学 仇人 朋友 家人
: (亮白字表示对方与我的关系;暗白色表示不存在的关系)
: 我想在资料库内储存这样的资料,很直觉地可以这麽做:
: Name relation1 relation2 relation3 relation4
: 王小明 1 0 1 0
: 李小英 0 0 0 1
: 陈小华 1 1 0 0
1. 一个栏位解决 (可以做到32~64个属性)
CLASSMATE 0x00000001
HATE 0x00000002
FRIEND 0x00000004
FAMILY 0x00000008
SET:
UPDATE XXX SET relation=CLASSMATE&HATE WHERE NAME='xxx';
QUERY:
SELECT NAME FROM XXX WHERE relation & CLASSMATE > 0;
SELECT NAME FROM XXX WHERE relation & (CLASSMATE|FAMILY) > 0
SELECT NAME FROM XXX WHERE relation & (CLASSMATE|FAMILY) = (CLASSMATE|FAMILY)
2. 建立 纪录 relation 的 table
ex:
王小明 friend
王小明 classmate
陈小华 classmate
陈小华 hate
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.121.11.28
※ 编辑: pakker 来自: 59.121.11.28 (07/17 22:00)
1F:推 chweng:先谢过,我会研究看看的! 07/17 22:37