to kingerq(多菜鸟) :多加个like似乎是可以,但如果我要在原来的条件基础上查呢,比如我第一次是用 place like '%china%',第二次用的是 place like '%shanghai%'。google是有这个功能,不过是不是你说的这么实现的,我到不知道,我去研究研究!
to ccterran(iwind):临时表是个好方法!
to tod204(八十年代):怎么用直接用sql语句,请具体说说好么?
第一次像这样子 place like '%china%' 第二次 place like '%china%' or place like '%shanghai%'
把多个条件进行相与呢?如 第一次像这样子 place like '%china%' 第二次 place like '%china%' and place like '%shanghai%'
to 52juanjuan(Fibona) :你说的其实跟kingerq(多菜鸟) 一样,实现是没问题了,但没利用上第一次查询的结果,这样第一次不是白查了么?比如遇到一个百万条数据的库,进行这样的查询就是在数据库中查两遍,而建立一个临时表,那么假如第一次查到的10万条记录,那么第二次我只要在这10万条上查,这样肯定比你那样查效率高!
就通过sql来查place like '%china%' and place like '%shanghai%'用and条件,这样的话第二次查的速度肯定比第一次快,条件越多记录相对越少。 对place列建索引临时表肯定比这个慢
其实,关于2次搜索,直接用sql语句就可以实现!
place like '%china%'
第二次
place like '%china%' or place like '%shanghai%'
第一次像这样子
place like '%china%'
第二次
place like '%china%' and place like '%shanghai%'
对place列建索引临时表肯定比这个慢