作者diamondking (天剑流星)
看板Database
标题Re: [SQL ] 条件使用like 以及% 的方式搜寻很少用吗!?
时间Sun Nov 4 14:52:07 2007
※ 引述《fatcats (体验ECOSWAY魅力^^)》之铭言:
: 起因是有个栏位 用了一个突发奇想的方式
: 本来是要开1 2 3 4 5...n 个栏位 然後分别纪录一个布林
: 也就是有n个功能 这个东西可以都有 也可以部分有
: 结果第一次设定成 一个栏位 纪录1,2,3,4,5,..,n 也就是把功能有的编号记下来
: 如果有1 3 4 没有2 5 ==>会纪录成 1,3,4
: 搜寻的时候 本来是打算用这样的方式
: 比方说搜寻拥有 3 5 功能的东西 ==> LIKE %3%5%
: 不论其他功能有没有 都可以找的到有包含 3 5功能的东西
: 不过这样 似乎效率会跟使用n个栏位来比差很多??
: 感觉上 如果我要同时搜寻拥有某3个功能的东西
: 使用n个栏位的 要搜寻3栏 * 资料笔数
: 使用1个栏位的 用like的方式 不是只要搜寻 一栏*资料笔数 吗!?
: 效能上为何会比较差呢!?
: 是因为%的关系吗!?
: 还是说可能比较快 也可能因为东西拥有的功能太多 导致每次比对都会比对
: 很长的一串资料 (比方说: 可能某个东西功能全都有 1,2,3,4,...,n)
: 是这样的意思吗??
: 感谢^^
这种需求,请开两张Table,一张记录产品别,一张记录产品的功能,
例如有A, B两种产品,A有1、2、3的功能;B有7、8的功能则table如下:
产品表里面只记两笔,即A跟B的基本资料,略。
功能表:
品号 功能
A 1
A 2
A 3
B 7
B 8
要找A功能,就select 功能 from 功能表 where 品号='A'即可
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.117.62.155