麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 課堂 > 基礎(chǔ)知識(shí) > 正文

sphinx實(shí)現(xiàn)聯(lián)合查詢幾個(gè)例子

2024-09-12 20:30:04
字體:
供稿:網(wǎng)友
  sphinx也就是一個(gè)像mysql數(shù)據(jù)庫的工具了,我們可以在linux中使用sphinx來替換mysql了,下面小編整理了幾個(gè)sphinx聯(lián)合查詢的語句,記得以前sphinx是不支持聯(lián)合查詢的,第一次接觸sphinx,好像2010年初的時(shí)候,當(dāng)時(shí)寫過一篇關(guān)于sphinx安裝的文章,sphinx mmseg mysql 中文分詞,下面舉例說明,sphinx的聯(lián)合查詢用法.
 
  一,添加二張測試表和數(shù)據(jù),代碼如下:
 
  1,users表和數(shù)據(jù)
 
  mysql> desc users;   
  +----------+-------------+------+-----+---------+----------------+   
  | Field | Type | Null | Key | Default | Extra |   
  +----------+-------------+------+-----+---------+----------------+   
  | user_id | int(11) | NO | PRI | NULL | auto_increment |   
  | username | varchar(20) | NO | | NULL | |   
  +----------+-------------+------+-----+---------+----------------+   
  2 rows in set (0.00 sec)   
    --phpfensi.com
  mysql> select * from users;   
  +------------+------------+   
  | user_id | username |   
  +------------+------------+   
  | 1311895262 | 張三 |   
  | 1311895263 | tank張二 |   
  | 1311895264 | tank張一 |   
  | 1311895265 | tank張 |   
  +------------+------------+   
  4 rows in set (0.00 sec)
  2,orders表和數(shù)據(jù)
 
  mysql> desc orders;   
  +--------------+-------------+------+-----+---------+----------------+   
  | Field | Type | Null | Key | Default | Extra |   
  +--------------+-------------+------+-----+---------+----------------+   
  | id | int(11) | NO | PRI | NULL | auto_increment |   
  | user_id | int(11) | NO | | NULL | |   
  | create_time | datetime | NO | | NULL | |   
  | product_name | varchar(20) | NO | | NULL | |   
  | summary | text | NO | | NULL | |   
  +--------------+-------------+------+-----+---------+----------------+   
  5 rows in set (0.00 sec)   
     
  mysql> select * from orders;   
  +----+------------+---------------------+----------------+--------------+   
  | id | user_id | create_time | product_name | summary |   
  +----+------------+---------------------+----------------+--------------+   
  | 9 | 1311895262 | 2014-08-01 00:24:54 | tank is 坦克 | 技術(shù)總監(jiān) |   
  | 10 | 1311895263 | 2014-08-01 00:24:54 | tank is 坦克 | 技術(shù)經(jīng)理 |   
  | 11 | 1311895264 | 2014-08-01 00:24:54 | tank is 坦克 | DNB經(jīng)理 |   
  | 12 | 1311895265 | 2014-08-01 00:24:54 | tank is 坦克 | 運(yùn)維總監(jiān) |   
  +----+------------+---------------------+----------------+--------------+   
  4 rows in set (0.00 sec)
  二,配置sphinx.conf,代碼如下:
 
  source order   
  {   
   type = mysql   
   sql_host = localhost   
   sql_user = root   
   sql_pass =   
   sql_db = test   
   sql_query_pre = SET NAMES utf8   
   sql_query = \   
   SELECT a.id, a.user_id,b.username, UNIX_TIMESTAMP(a.create_time) AS create_time, a.product_name, a.summary \   
   FROM orders a left join users b on a.user_id = b.user_id   
   sql_attr_uint = user_id   
   sql_field_string = username   
   sql_field_string = product_name   
   sql_attr_timestamp = create_time   
   sql_ranged_throttle = 0   
   sql_query_info = SELECT * FROM orders WHERE id=$id   
  }   
     
  index myorder   
  {   
   source = order   
   path = /usr/local/sphinx/var/data/myorder   
   docinfo = extern   
   mlock = 0   
   morphology = none   
   min_word_len = 1   
   charset_dictpath = /usr/local/mmseg3/etc/   
   charset_type = zh_cn.utf-8   
   ngram_len = 0   
   html_strip = 0   
  }
  注意:在這里a.user_id = b.user_id,等號(hào)二邊一定要有空格,不然就會(huì)報(bào)錯(cuò).
 
  三,重啟sphinx,代碼如下:
 
  # pkill searchd   
  # /usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf --all   
  # /usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf
  四,測試sphinx,代碼如下:
 
  [root@localhost etc]# mysql -h 127.0.0.1 -P 9306 //登錄sphinx,9306端口,不是真實(shí)的mysql   
  Welcome to the MySQL monitor. Commands end with ; or \g.   
  Your MySQL connection id is 1   
  Server version: 1.11-id64-dev (r2540)   
     
  Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.   
     
  Oracle is a registered trademark of Oracle Corporation and/or its   
  affiliates. Other names may be trademarks of their respective   
  owners.   
     
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.   
     
  mysql> select * from myorder where match('張');   
  +------+--------+------------+------------+-------------+----------------+   
  | id | weight | user_id | username | create_time | product_name |   
  +------+--------+------------+------------+-------------+----------------+   
  | 9 | 1304 | 1311895262 | 張三 | 1406823894 | tank is 坦克 |   
  | 10 | 1304 | 1311895263 | tank張二 | 1406823894 | tank is 坦克 |   
  | 11 | 1304 | 1311895264 | tank張一 | 1406823894 | tank is 坦克 |   
  | 12 | 1304 | 1311895265 | tank張 | 1406823894 | tank is 坦克 |   
  +------+--------+------------+------------+-------------+----------------+   
  4 rows in set (0.01 sec)   
     
  mysql> select * from myorder where match('張三');   
  +------+--------+------------+----------+-------------+----------------+   
  | id | weight | user_id | username | create_time | product_name |   
  +------+--------+------------+----------+-------------+----------------+   
  | 9 | 2500 | 1311895262 | 張三 | 1406823894 | tank is 坦克 |   
  +------+--------+------------+----------+-------------+----------------+   
  1 row in set (0.00 sec)。
 

(編輯:武林網(wǎng))

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久久久久久淑女av国产精品 | 中国性xxx | 午夜视 | 羞羞色在线观看 | 超级av在线 | 在线亚洲欧美 | 一级黄色毛片免费 | 牛牛a级毛片在线播放 | 看免费一级毛片 | 亚洲人成在线播放网站 | 国产午夜亚洲精品午夜鲁丝片 | 黄色片网站免费在线观看 | 久久精品久 | 久久电影一区二区 | 狠狠操精品视频 | 99久久婷婷国产综合精品青牛牛 | 久久成人福利 | 欧美精品18 | 成人三级视频网站 | 国产91一区二区三区 | 午夜丰满少妇高清毛片1000部 | 免费观看9x视频网站在线观看 | 美女性感毛片 | 红杏网站永久免费视频入口 | 91丨九色丨国产在线观看 | 国产精品99久久久久久大便 | 久久国产精品免费视频 | 久久国产精品久久久久 | 亚洲精品无码不卡在线播放he | 精品成人网 | 国产一国产一级毛片视频 | 在线播放免费人成毛片乱码 | 91热久久免费频精品黑人99 | 久久中文一区 | 国产亚洲自拍一区 | 欧美一级成人一区二区三区 | 销魂美女一区二区 | 色就色 综合偷拍区91网 | 色吧久久 | 欧美综合成人 | 国产三级三级三级三级 |