作者SmallBeeWayn (喵喵叫的蜜蜂猫)
看板PHP
标题Re: [请益] 对资料库的多对多索引
时间Mon Jul 10 18:56:45 2006
※ 引述《SmallBeeWayn (喵喵叫的蜜蜂猫)》之铭言:
: 系统是 Apache 1.3.36 + PHP 5.1.4 + MySQL 4.1.18
: 我现在有TABLE A
: 内容有 A.Album, A.Artist, A.TraceName
: 以及TABLE B
: 内容: B.Japanese, B.TChinese
: 所有值都是VARCHAR型态
: A的某一个值可能对应到B.Japanese
: 我希望能够输出一个List, 内容是中英对照
: 大约就是
: A.Album, 对应B.TChinese, A.Artist, 对应B.TChinese, A.TraceName,
: 对应B.TChinese
: 应该是不能直接用LEFT JOIN,因为三个A的值都要在B搜寻对应
: 目前想到的只有等A输出之後再进B去搜寻
: 不过会出现一大堆搜寻....
: 也想过把TABLE做映射,不过好像没这种指令
: 查了PHP语法似乎也没有速效方法
: 请问这种问题该怎麽处理?
:
: 推 foxzgerald:请问这个料库的目的是什麽哩? 07/10 17:29
: 推 PsMonkey:说实在的,实在看不懂问题的叙述... [耸肩膀] 07/10 18:12
那就看一下目前已经完成的部份吧...
http://mostmoe.thedigitalfreeway.com/
请点 2006年 - 一次预选 - 01组
可以看到所有名称用的都是日文,储存於表A
但是我想再加上中文译名
这些对应资料储存於B
最直观的方法就是对B使用
"SELECT B.TChinese FROM B WHERE B.Japanese='".$jname."'"
然後$jname则是日文名称
也就是我这样的一个输出表格,得对资料库做8人*3笔(名字、动画、声优)=24次搜寻
实在是有够浪费
所以想知道有没有效率一点的方法
原本是想从SQL命令上下手,但是查了很多资料似乎没办法
所以想改从PHP的一些Array指令来处理
不过我这部份很不熟..所以来请教大家
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.204.46
1F:推 PsMonkey:还是看不懂... [茶] 07/10 22:14
2F:推 jlshen:TABLE B 等於是做翻译用的,从 A 找到的资料要经过 B 翻译 07/10 22:35
3F:→ rushcat:中对日 / 一对一 为何不直接加进栏位!? (真的不是很懂...) 07/10 22:37