精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

MySQL 模糊查詢再也不用like+%了

數據庫
InnoDB 的全文檢索在一些簡單的搜索場景下還是比較實用的,可以替代 like+%,并且不需要額外依賴其他服務。

我們都知道 InnoDB 在模糊查詢數據時使用 "%xx" 會導致索引失效,但有時需求就是如此,類似這樣的需求還有很多。

例如,搜索引擎需要根基用戶數據的關鍵字進行全文查找,電子商務網站需要根據用戶的查詢條件,在可能需要在商品的詳細介紹中進行查找,這些都不是 B+ 樹索引能很好完成的工作。

通過數值比較,范圍過濾等就可以完成絕大多數我們需要的查詢了。但是,如果希望通過關鍵字的匹配來進行查詢過濾,那么就需要基于相似度的查詢,而不是原來的精確數值比較,全文索引就是為這種場景設計的。

全文索引(Full-Text Search)是將存儲于數據庫中的整本書或整篇文章中的任意信息查找出來的技術。它可以根據需要獲得全文中有關章、節、段、句、詞等信息,也可以進行各種統計和分析。

在早期的 MySQL 中,InnoDB 并不支持全文檢索技術,從 MySQL 5.6 開始,InnoDB 開始支持全文檢索。

一、倒排索引

全文檢索通常使用倒排索引(inverted index)來實現,倒排索引同 B+Tree 一樣,也是一種索引結構。它在輔助表中存儲了單詞與單詞自身在一個或多個文檔中所在位置之間的映射。

這通常利用關聯數組實現,擁有兩種表現形式:

  • inverted file index:{單詞,單詞所在文檔的id}
  • full inverted index:{單詞,(單詞所在文檔的id,再具體文檔中的位置)}

上圖為 inverted file index 關聯數組,可以看到其中單詞"code"存在于文檔1,4中,這樣存儲再進行全文查詢就簡單了,可以直接根據 Documents 得到包含查詢關鍵字的文檔。

而 full inverted index 存儲的是對,即(DocumentId,Position),因此其存儲的倒排索引如下圖,如關鍵字"code"存在于文檔 1 的第 6 個單詞和文檔 4 的第 8 個單詞。

相比之下,full inverted index 占用了更多的空間,但是能更好的定位數據,并擴充一些其他搜索特性。

二、全文檢索

1.創建全文索引

(1) 創建表時創建全文索引語法如下:

CREATE TABLE table_name ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, author VARCHAR(200), 
title VARCHAR(200), content TEXT(500), FULLTEXT full_index_name (col_name) ) ENGINE=InnoDB;

輸入查詢語句:

SELECT table_id, name, space from INFORMATION_SCHEMA.INNODB_TABLES
WHERE name LIKE 'test/%';

上述六個索引表構成倒排索引,稱為輔助索引表。當傳入的文檔被標記化時,單個詞與位置信息和關聯的 DOC_ID,根據單詞的第一個字符的字符集排序權重,在六個索引表中對單詞進行完全排序和分區。

(2) 在已創建的表上創建全文索引語法如下:

CREATE FULLTEXT INDEX full_index_name ON table_name(col_name);

2.使用全文索引

MySQL 數據庫支持全文檢索的查詢,全文索引只能在 InnoDB 或 MyISAM 的表上使用,并且只能用于創建 char,varchar,text 類型的列。

其語法如下:

MATCH(col1,col2,...) AGAINST(expr[search_modifier])
search_modifier:
{
    IN NATURAL LANGUAGE MODE
    | IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION
    | IN BOOLEAN MODE
    | WITH QUERY EXPANSION
}

全文搜索使用 MATCH() AGAINST() 語法進行,其中,MATCH() 采用逗號分隔的列表,命名要搜索的列。

AGAINST() 接收一個要搜索的字符串,以及一個要執行的搜索類型的可選修飾符。全文檢索分為三種類型:自然語言搜索、布爾搜索、查詢擴展搜索,下面將對各種查詢模式進行介紹。

(1) Natural Language

自然語言搜索將搜索字符串解釋為自然人類語言中的短語,MATCH() 默認采用 Natural Language 模式,其表示查詢帶有指定關鍵字的文檔。

接下來結合 demo 來更好的理解 Natural Language:

SELECT
    count(*) AS count 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( 'MySQL' );

上述語句,查詢 title,body 列中包含 'MySQL' 關鍵字的行數量。上述語句還可以這樣寫:

SELECT
    count(IF(MATCH ( title, body ) 
    against ( 'MySQL' ), 1, NULL )) AS count 
FROM
    `fts_articles`;

上述兩種語句雖然得到的結果是一樣的,但從內部運行來看,第二句 SQL 的執行速度更快些,因為第一句 SQL(基于 where 索引查詢的方式)還需要進行相關性的排序統計,而第二種方式是不需要的。

還可以通過 SQL 語句查詢相關性:

SELECT
    *,
    MATCH ( title, body ) against ( 'MySQL' ) AS Relevance 
FROM
    fts_articles;

相關性的計算依據以下四個條件:

  • word 是否在文檔中出現
  • word 在文檔中出現的次數
  • word 在索引列中的數量
  • 多少個文檔包含該 word

對于 InnoDB 存儲引擎的全文檢索,還需要考慮以下的因素:

  • 查詢的 word 在 stopword 列中,忽略該字符串的查詢
  • 查詢的 word 的字符長度是否在區間 [innodb_ft_min_token_size,innodb_ft_max_token_size] 內

如果詞在 stopword 中,則不對該詞進行查詢,如對 'for' 這個詞進行查詢,結果如下所示:

SELECT
    *,
    MATCH ( title, body ) against ( 'for' ) AS Relevance 
FROM
    fts_articles;

可以看到,'for'雖然在文檔 2,4 中出現,但由于其是 stopword,故其相關性為 0。

參數 innodb_ft_min_token_size 和 innodb_ft_max_token_size 控制 InnoDB 引擎查詢字符的長度。

當長度小于 innodb_ft_min_token_size 或者長度大于 innodb_ft_max_token_size 時,會忽略該詞的搜索。

在 InnoDB 引擎中,參數 innodb_ft_min_token_size 的默認值是 3,innodb_ft_max_token_size 的默認值是 84。

(2) Boolean

布爾搜索使用特殊查詢語言的規則來解釋搜索字符串,該字符串包含要搜索的詞,它還可以包含指定要求的運算符,例如匹配行中必須存在或不存在某個詞,或者它的權重應高于或低于通常情況。

例如,下面的語句要求查詢有字符串"Pease"但沒有"hot"的文檔,其中+和-分別表示單詞必須存在,或者一定不存在。

select * from fts_test where MATCH(content) AGAINST('+Pease -hot' IN BOOLEAN MODE);

Boolean 全文檢索支持的類型包括:

  • +:表示該 word 必須存在
  • -:表示該 word 必須不存在
  • (no operator):表示該 word 是可選的,但是如果出現,其相關性會更高
  • @distance:表示查詢的多個單詞之間的距離是否在 distance 之內,distance 的單位是字節,這種全文檢索的查詢也稱為 Proximity Search,如 MATCH(context) AGAINST('"Pease hot"@30' IN BOOLEAN MODE)語句表示字符串 Pease 和 hot 之間的距離需在 30 字節內
  • >:表示出現該單詞時增加相關性
  • <:表示出現該單詞時降低相關性
  • ~:表示允許出現該單詞,但出現時相關性為負
  • * :表示以該單詞開頭的單詞,如 lik*,表示可以是 lik,like,likes
  • " :表示短語

下面是一些 demo,看看 Boolean Mode 是如何使用的。

① demo1:+ -

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( '+MySQL -YourSQL' IN BOOLEAN MODE );

上述語句,查詢的是包含 'MySQL' 但不包含 'YourSQL' 的信息。

② demo2:no operator

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( 'MySQL IBM' IN BOOLEAN MODE );

上述語句,查詢的 'MySQL IBM' 沒有 '+','-'的標識,代表 word 是可選的,如果出現,其相關性會更高。

③ demo3:@

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( '"DB2 IBM"@3' IN BOOLEAN MODE );

上述語句,代表 "DB2" ,"IBM"兩個詞之間的距離在 3 字節之內。

④ demo4:> <

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( '+MySQL +(>database <DBMS)' IN BOOLEAN MODE );

上述語句,查詢同時包含 'MySQL','database','DBMS' 的行信息,但不包含'DBMS'的行的相關性高于包含'DBMS'的行。

⑤ demo5: ~

SELECT
    * 
FROM
    `fts_articles` 
WHERE

上述語句,查詢包含 'MySQL' 的行,但如果該行同時包含 'database',則降低相關性。

⑥ demo6:*

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( 'My*' IN BOOLEAN MODE );

上述語句,查詢關鍵字中包含'My'的行信息。

⑦ demo7:"

SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH ( title, body ) AGAINST ( '"MySQL Security"' IN BOOLEAN MODE );

上述語句,查詢包含確切短語 'MySQL Security' 的行信息。

(3) Query Expansion

查詢擴展搜索是對自然語言搜索的修改,這種查詢通常在查詢的關鍵詞太短,用戶需要 implied knowledge(隱含知識)時進行。

例如,對于單詞 database 的查詢,用戶可能希望查詢的不僅僅是包含 database 的文檔,可能還指那些包含 MySQL、Oracle、RDBMS 的單詞,而這時可以使用 Query Expansion 模式來開啟全文檢索的 implied knowledge。

通過在查詢語句中添加 WITH QUERY EXPANSION / IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION 可以開啟 blind query expansion(又稱為 automatic relevance feedback)。

該查詢分為兩個階段:

  • 第一階段:根據搜索的單詞進行全文索引查詢
  • 第二階段:根據第一階段產生的分詞再進行一次全文檢索的查詢

接著來看一個例子,看看 Query Expansion 是如何使用的。

-- 創建索引
create FULLTEXT INDEX title_body_index on fts_articles(title,body);
-- 使用 Natural Language 模式查詢
SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH(title,body) AGAINST('database');

使用 Query Expansion 前查詢結果如下:

-- 當使用 Query Expansion 模式查詢
SELECT
    * 
FROM
    `fts_articles` 
WHERE
    MATCH(title,body) AGAINST('database' WITH QUERY expansion);

使用 Query Expansion 后查詢結果如下:

由于 Query Expansion 的全文檢索可能帶來許多非相關性的查詢,因此在使用時,用戶可能需要非常謹慎。

3.刪除全文索引

①直接刪除全文索引語法如下:

DROP INDEX full_idx_name ON db_name.table_name;

②使用 alter table 刪除全文索引語法如下:

ALTER TABLE db_name.table_name DROP INDEX full_idx_name;

小結

本文從理論與實踐結合的角度對 fulltext index 做了介紹。InnoDB 的全文檢索在一些簡單的搜索場景下還是比較實用的,可以替代 like+%,并且不需要額外依賴其他服務。復雜搜索場景的話,我們還是需要使用 ES 這類搜索引擎。

責任編輯:趙寧寧 來源: 技術老男孩
相關推薦

2022-01-10 09:50:52

MySQLlike+%數據庫

2021-12-21 09:05:46

命令Linux敲錯

2015-05-29 09:01:48

2020-06-15 08:03:17

大文件OOM內存

2023-07-29 22:02:06

MyBatis數據庫配置

2018-10-11 15:51:32

ChromeGoogle瀏覽器

2023-11-27 17:11:02

數據庫oracle

2022-06-01 10:09:39

Linux網絡延遲

2020-12-18 08:23:16

安卓手機系統谷歌

2024-01-26 07:00:11

Python工具無向圖

2021-08-13 22:38:36

大數據互聯網技術

2025-04-25 10:00:00

2019-09-04 10:00:07

手機人臉識別

2015-10-22 10:38:43

Wi-Fi燃氣報警器

2020-01-21 21:15:16

WiFi網絡WiFi6

2021-06-11 07:14:04

QQ音樂微信翻譯

2024-11-27 14:30:46

2024-08-26 00:01:00

前端性能優化

2022-09-14 08:02:25

加密算法Bcryp

2016-08-09 16:17:37

高德地圖TFBOYS大數據
點贊
收藏

51CTO技術棧公眾號

成人网站免费观看入口| 国外成人性视频| 蜜臀av免费观看| 国产网友自拍视频导航网站在线观看 | 日韩avvvv在线播放| 日韩一区二区av| 一级黄色大片儿| www.超碰在线| 中文字幕五月欧美| 国偷自产av一区二区三区小尤奈| 懂色av中文字幕| 欧美久久久久| 亚洲一区www| 亚洲自拍中文字幕| 成人午夜视频精品一区| 欧美顶级大胆免费视频| 亚洲精品福利在线| 色婷婷一区二区三区在线观看| 欧美性大战久久久久xxx| 日本韩国免费观看| 蜜桃视频免费观看一区| 97国产精品久久| 男人晚上看的视频| 精品一区在线| 欧美va亚洲va| 成人不卡免费视频| 综合另类专区| 亚洲一区二区三区精品在线| 欧美国产视频在线观看| 亚洲精品97久久中文字幕| 日本 国产 欧美色综合| 欧美在线不卡区| 久久精品国产亚洲AV无码男同| 99精品视频在线| 亚洲人成网站色ww在线| 日本在线不卡一区二区| 日韩精品一区二区三区中文字幕 | 久久综合网hezyo| 在线免费观看麻豆| 久久九九热re6这里有精品 | 亚洲妇女屁股眼交7| 日韩视频在线免费播放| 国产女人在线观看| 久久夜色精品国产欧美乱极品| 不卡视频一区二区| 国产夫妻性生活视频| 黄色小说综合网站| 国产精品网站入口| 中文字幕乱码无码人妻系列蜜桃| 久久久久久久高潮| 国产精品久久久久999| 综合网在线观看| 久久成人国产| 日韩av电影在线免费播放| 精品国产一区二区三区四| 99精品国产99久久久久久福利| 久久久在线视频| 极品久久久久久| 中文字幕一区二区三区欧美日韩| 久久精品国产v日韩v亚洲| 永久免费观看片现看| 久久在线电影| 久久成人18免费网站| 加勒比婷婷色综合久久| 欧美福利影院| 国内精品久久久久影院 日本资源| 久久精品www| 亚洲第一区色| 日本欧美在线视频| 中文字幕乱码无码人妻系列蜜桃| 激情五月播播久久久精品| 亚洲精品免费网站| 成人午夜免费福利| wwwwxxxxx欧美| 亚洲精美视频| 99自拍视频在线观看| 亚洲高清在线视频| 国产综合免费视频| 美女视频一区| 欧美videofree性高清杂交| 99久久人妻精品免费二区| 最新国产一区| 久久精品国产欧美激情| 国产真实乱偷精品视频| 玖玖在线精品| 99久热re在线精品996热视频| 十八禁一区二区三区| 久久久蜜臀国产一区二区| 亚洲人成网站在线播放2019| 香蕉久久aⅴ一区二区三区| 精品免费在线观看| 91精品综合视频| 国产精品一区二区人人爽 | 国产又粗又猛又色| 欧美精选视频在线观看| 久久亚洲国产精品| 亚洲天堂日韩av| 美国av一区二区| 成人动漫视频在线观看完整版 | 久久久国产精品免费| 国产在线拍揄自揄拍| 日韩制服丝袜av| av噜噜色噜噜久久| 啊v视频在线| 亚洲成年人网站在线观看| 亚洲xxxx2d动漫1| 国产精品白浆| 久久韩剧网电视剧| 麻豆精品久久久久久久99蜜桃| 国产真实乱偷精品视频免| 久久99精品国产99久久| 成人短视频在线| 欧美在线999| 免费不卡的av| 欧美1区3d| 国产精品三级网站| 熟妇高潮一区二区高潮| 亚洲日本护士毛茸茸| 欧美日韩亚洲一二三| 99re6热只有精品免费观看| 一区二区三区四区视频| 青青青国产在线| 高清不卡在线观看av| 亚洲一区3d动漫同人无遮挡 | 久久九九电影| 国产精品v欧美精品∨日韩| 在线视频自拍| 一本色道久久综合狠狠躁的推荐 | 欧美日韩国产成人| 亚洲最大成人av| 久久久久久一区二区| 9a蜜桃久久久久久免费| 欧美激情午夜| 欧美午夜一区二区三区| 天天躁日日躁aaaxxⅹ| 国产欧美精品| 国产伦精品一区二区三区免| 污视频网站免费在线观看| 欧美日韩和欧美的一区二区| 免费看的黄色网| 日韩高清一级片| 免费在线一区二区| 在线中文字幕播放| 亚洲精品美女网站| 久久久午夜影院| 99国产欧美另类久久久精品| 九色自拍视频在线观看| 爱高潮www亚洲精品| 欧美极品美女视频网站在线观看免费| 888奇米影视| 国产精品久久看| 亚洲少妇久久久| 99精品视频在线观看播放| 国产欧美日韩最新| 日本成人在线播放| 欧美福利电影网| 国产老头老太做爰视频| 久久99久久99精品免视看婷婷| 一区二区三区四区五区视频| 粉嫩av一区二区三区四区五区| 中国china体内裑精亚洲片| 欧美一级做a爰片免费视频| 国产日韩欧美不卡在线| 一区二区三区视频网| 天天射成人网| 999视频在线免费观看| 精灵使的剑舞无删减版在线观看| 精品国产乱码久久久久久久久| www.国产成人| 久久久久久久久久看片| 国产又大又黄又粗的视频| 日韩久久精品| 99re在线| 欧美成人ⅴideosxxxxx| 在线成人激情视频| 国产av无码专区亚洲a∨毛片| 亚洲自拍偷拍九九九| 国产精品无码一区二区三| 久久久精品性| 三年中国中文在线观看免费播放| 精品国产鲁一鲁****| 久久久久久国产三级电影| 日本私人网站在线观看| 欧美日韩在线播放一区| 亚洲一区二区三区四区av| 国产精品久久久亚洲一区| 亚洲国产欧美不卡在线观看| 国产精品视频一区视频二区 | 国产小视频在线免费观看| 久久精品亚洲麻豆av一区二区| 午夜激情av在线| 欧美日韩在线大尺度| 久久婷婷人人澡人人喊人人爽| 韩国精品主播一区二区在线观看| 美女精品视频一区| 免费黄色片在线观看| 欧美一区二区三区影视| 天堂中文字幕在线观看| 中文字幕一区二区三区四区| 国模私拍在线观看| 美国欧美日韩国产在线播放| www.日本三级| 日韩在线中文| 久久99精品久久久久久三级| 日韩成人精品一区二区三区| 国外视频精品毛片| 蜜芽在线免费观看| 亚洲欧美日韩另类| 懂色av一区二区三区四区| 欧美日韩一区二区三区视频| 精品成人av一区二区在线播放| 亚洲欧美一区二区三区极速播放 | 国产精品网站入口| 在线一区av| 久久久久久久久久久免费| 免费网站成人| 一本色道久久综合狠狠躁篇的优点| 人妻无码中文字幕| 日韩一级片网站| 亚洲手机在线观看| 在线视频国内一区二区| 久久艹免费视频| 亚洲综合久久久久| 国产精品三区在线观看| 国产精品麻豆一区二区| 亚洲色成人网站www永久四虎| 成人高清视频在线| 伊人成人免费视频| 极品美女销魂一区二区三区免费| 欧美三级午夜理伦三级| 国产欧美日韩综合一区在线播放| 男人天堂新网址| 午夜亚洲福利| 国产91porn| 欧美1级日本1级| 国产精品一二三在线观看| 国产精品x453.com| 中国成人亚色综合网站| 日韩在线理论| 这里只有精品66| 亚洲精品国产偷自在线观看| 伊人久久av导航| 天堂美国久久| 午夜久久久久久久久久久| 91av精品| 最新视频 - x88av| 中文字幕日韩欧美精品高清在线| 国产又粗又大又爽的视频| 亚洲欧美综合久久久| 欧美日韩在线免费观看视频| 亚洲九九在线| 黄网站色视频免费观看| 黄色亚洲免费| 国产乱淫av片杨贵妃| 伊人久久亚洲影院| 欧美 国产 综合| 久久亚洲风情| 中日韩av在线播放| 国产麻豆一精品一av一免费| 好吊操视频这里只有精品| 成人自拍视频在线| 亚洲av无码一区二区三区网址| 91蜜桃在线免费视频| 最近中文字幕在线mv视频在线| 欧美激情一区二区三区在线| 91精品国自产在线| 中文字幕亚洲欧美在线不卡| wwwav国产| 欧美日韩国产页| 国产精华7777777| 91超碰这里只有精品国产| 精品国产av 无码一区二区三区| 精品国产一区二区三区不卡 | 北条麻妃一区二区三区在线| 久久国产一区| 欧美国产一级| 久久久99精品视频| 麻豆精品网站| 午夜天堂在线视频| www.久久精品| 娇妻被老王脔到高潮失禁视频| 亚洲婷婷在线视频| 亚欧视频在线观看| 精品视频一区三区九区| 国产熟女一区二区三区五月婷| 亚洲高清一区二| 成年人在线观看网站| 美女少妇精品视频| 性欧美超级视频| 99精品在线直播| 国产亚洲欧美日韩在线观看一区二区| 中国一区二区三区| 在线一区视频| 日韩成人av免费| 91影院在线免费观看| 亚洲人与黑人屁股眼交| 欧美日韩国产一中文字不卡 | 国内成人自拍视频| 亚洲一区二区观看| 亚洲精品videosex极品| 亚洲GV成人无码久久精品| 欧美一卡二卡在线| 福利片在线看| 久久久这里只有精品视频| 亚洲高清影院| 青娱乐国产91| 99伊人成综合| 男人女人拔萝卜视频| 国产精品三级av在线播放| 国产精品视频免费播放| 精品女同一区二区| 黄色网页在线观看| 国产成人综合一区二区三区| 国产精品欧美大片| 国产女人18毛片| 蜜桃视频一区二区三区| 永久免费成人代码| 精品女同一区二区三区在线播放 | 日韩免费大片| 四虎永久国产精品| 免费日韩视频| 精品国产av色一区二区深夜久久| 一区二区久久久久久| 国产永久免费视频| 在线国产精品视频| 免费观看成人性生生活片| 精品在线不卡| 亚洲黄色精品| 一级少妇精品久久久久久久| 亚洲精品中文字幕乱码三区| 国产精品主播一区二区| 中文字幕一区二区三区电影| 电影亚洲精品噜噜在线观看| 久久成人资源| 一区二区久久| 亚洲精品乱码久久| 亚洲国产人成综合网站| 成人av手机在线| 欧美日韩成人在线播放| 亚洲精选av| 91成人综合网| bt欧美亚洲午夜电影天堂| 日韩三级一区二区三区| 精品国产不卡一区二区三区| 精灵使的剑舞无删减版在线观看| 成人免费看片网站| 一区二区视频欧美| 国产性生活毛片| 婷婷一区二区三区| 欧美日韩国产中文字幕在线| 国产91色在线| 欧美美女一区| 精品综合久久久久| 伊人色综合久久天天| 亚洲国产日韩在线观看| 久久久久久国产精品| 亚洲日本三级| 嫩草影院国产精品| 亚洲欧美日韩在线| 成人午夜免费福利| 欧美中文在线观看| 精品国产91乱码一区二区三区四区 | 日韩高清在线电影| 亚洲综合图片一区| 日韩女优毛片在线| 色偷偷偷在线视频播放 | 婷婷综合在线| 免费在线观看日韩av| 天天色综合天天| 国产乱视频在线观看| 成人国产在线视频| 在线看片一区| 精品人妻无码一区二区三区换脸| 欧美日韩中文字幕一区二区| 成人a在线视频免费观看| 国产免费一区二区| 日本在线播放一区二区三区| 国产麻豆视频在线观看| 亚洲精品久久久久中文字幕欢迎你| 成人天堂yy6080亚洲高清| 9l视频自拍9l视频自拍| av午夜一区麻豆| 最近中文字幕免费在线观看| 欧美日韩国产第一页| 神马电影久久| 成人免费播放视频| 色哟哟国产精品免费观看| 成人免费观看视频大全| 久久66热这里只有精品| 狠狠色综合色综合网络| 国产精品黄色大片| 日韩在线观看高清| 日韩有码中文字幕在线| 爱豆国产剧免费观看大全剧苏畅 | 成人看片爽爽爽| 免费一级特黄录像| 性做久久久久久久免费看| 在线观看免费高清完整| 国产一区免费在线| 久久精品国产**网站演员|