日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Elasticsearch SQL介绍及实例

發布時間:2024/1/23 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Elasticsearch SQL介绍及实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Elasticsearch 是一個全文搜索引擎,具有您期望的所有優點,例如相關性評分,詞干,同義詞等。而且,由于它是具有水平可擴展的分布式文檔存儲,因此它可以處理數十億行數據,而不會費勁。針對Elasticsearch專業人員來說,大多數人喜歡使用DSL來進行搜索,但是對于一些不是那么專業的人員來說,他們更為熟悉的是 SQL 語句。如何讓他們對 Elasticsearch 的數據進行查詢是一個問題。借助 Elasticsearch SQL,您可以使用熟悉的查詢語法訪問全文搜索,超快的速度和輕松的可伸縮性。X-Pack 包含一項 SQL 功能,可對 Elasticsearch 索引執行 SQL 查詢并以表格格式返回結果。

?

在今天的文章里,我們將簡單介紹一下如何使用 Elasticsearch SQL來對我們的數據進行查詢。在之前的一篇文章“Kibana:Canvas入門”里也有 Elasticsearch SQL 的具體用例介紹。

?

安裝

?

對于還沒安裝好自己的 Elasticsearch 的開發者來說,你可以參閱我之前的文章“Elastic:菜鳥上手指南”來進行安裝自己的 Elasticsearch 及 Kibana。在這里我就不累述了。

?

準備數據

?

我們首先打開 Kibana:

?

?

點擊上面的“Load a data set and a Kibana dashboard”:

?

?

點擊上面的 Add data,這樣我們就可以完成實驗數據的導入了。在 Elasticsearch 中,我們會找到一個叫 kibana_sample_data_flights 的索引。

?

SQL 實操

?

?

檢索 Elasticsearch schema 信息:DSL vs SQL

?

首先,我們確定表/索引的 schema 以及可供我們使用的字段。我們將通過 REST 界面執行此操作:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST /_sql{ "query": """ DESCRIBE kibana_sample_data_flights """}上面命令的結果:{ "columns" : [ { "name" : "column", "type" : "keyword" }, { "name" : "type", "type" : "keyword" }, { "name" : "mapping", "type" : "keyword" } ], "rows" : [ [ "AvgTicketPrice", "REAL", "float" ], [ "Cancelled", "BOOLEAN", "boolean" ], [ "Carrier", "VARCHAR", "keyword" ], [ "Dest", "VARCHAR", "keyword" ], [ "DestAirportID", "VARCHAR", "keyword" ], [ "DestCityName", "VARCHAR", "keyword" ], [ "DestCountry", "VARCHAR", "keyword" ], [ "DestLocation", "GEOMETRY", "geo_point" ], [ "DestRegion", "VARCHAR", "keyword" ], [ "DestWeather", "VARCHAR", "keyword" ], [ "DistanceKilometers", "REAL", "float" ], [ "DistanceMiles", "REAL", "float" ], [ "FlightDelay", "BOOLEAN", "boolean" ], [ "FlightDelayMin", "INTEGER", "integer" ], [ "FlightDelayType", "VARCHAR", "keyword" ], [ "FlightNum", "VARCHAR", "keyword" ], [ "FlightTimeHour", "VARCHAR", "keyword" ], [ "FlightTimeMin", "REAL", "float" ], [ "Origin", "VARCHAR", "keyword" ], [ "OriginAirportID", "VARCHAR", "keyword" ], [ "OriginCityName", "VARCHAR", "keyword" ], [ "OriginCountry", "VARCHAR", "keyword" ], [ "OriginLocation", "GEOMETRY", "geo_point" ], [ "OriginRegion", "VARCHAR", "keyword" ], [ "OriginWeather", "VARCHAR", "keyword" ], [ "dayOfWeek", "INTEGER", "integer" ], [ "timestamp", "TIMESTAMP", "datetime" ] ]}

?

也可以通過 url 參數 format = txt 以表格形式格式化以上響應。例如:

?

  • ?
  • ?
  • ?
  • ?
POST /_sql?format=txt { "query": "DESCRIBE kibana_sample_data_flights"}

?

上面命令查詢的結果是:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
column | type | mapping ------------------+---------------+---------------AvgTicketPrice |REAL |float Cancelled |BOOLEAN |boolean Carrier |VARCHAR |keyword Dest |VARCHAR |keyword DestAirportID |VARCHAR |keyword DestCityName |VARCHAR |keyword DestCountry |VARCHAR |keyword DestLocation |GEOMETRY |geo_point DestRegion |VARCHAR |keyword DestWeather |VARCHAR |keyword DistanceKilometers|REAL |float DistanceMiles |REAL |float FlightDelay |BOOLEAN |boolean FlightDelayMin |INTEGER |integer FlightDelayType |VARCHAR |keyword FlightNum |VARCHAR |keyword FlightTimeHour |VARCHAR |keyword FlightTimeMin |REAL |float Origin |VARCHAR |keyword OriginAirportID |VARCHAR |keyword OriginCityName |VARCHAR |keyword OriginCountry |VARCHAR |keyword OriginLocation |GEOMETRY |geo_point OriginRegion |VARCHAR |keyword OriginWeather |VARCHAR |keyword dayOfWeek |INTEGER |integer timestamp |TIMESTAMP |datetime

?

是不是感覺回到 SQL 時代啊:)

?

向前邁進,只要提供來自 REST api 的示例響應,我們就會使用上面顯示的表格響應結構。要通過控制臺實現相同的查詢,需要使用以下命令登錄:

?

  • ?
./bin/elasticsearch-sql-cli http://localhost:9200

?

我們可在屏幕上看到如下的畫面:

?

?

太神奇了。我們直接看到 SQL 的命令提示符了。在上面的命令行中,我們打入如下的命令:

?

  • ?
DESCRIBE kibana_sample_data_flights;

?

這個結果和我們在Kibana中得到的結果是一樣的。

?

上面的schema也會隨對在 SELECT 子句中顯示的字段的任何查詢一起返回,從而為任何潛在的驅動程序提供格式化或對結果進行操作所需的必要類型信息。例如,考慮帶有 LIMIT 子句的簡單 SELECT,以使響應簡短。默認情況下,我們返回1000行。

?

我們發現索引的名字 kibana_sample_data_flights 比較長,為了方便,我們來創建一個alias:

?

  • ?
PUT /kibana_sample_data_flights/_alias/flights

?

這樣在以后的操作中,當我們使用flights的時候,其實也就是對索引kibana_sample_data_flights 進行操作。

?

我們執行如下的命令:

?

  • ?
  • ?
  • ?
  • ?
POST /_sql?format=txt { "query": "SELECT FlightNum FROM flights LIMIT 1"}

?

顯示結果:

?

  • ?
  • ?
  • ?
FlightNum ---------------9HY9SWR

?

相同的REST請求/響應由JDBC驅動程序和控制臺使用:

?

  • ?
  • ?
  • ?
  • ?
sql> SELECT OriginCountry, OriginCityName FROM flights LIMIT 1; OriginCountry | OriginCityName ---------------+-----------------DE |Frankfurt am Main

?

請注意,如果在任何時候請求的字段都不存在(區分大小寫),則表格式和強類型存儲區的語義意味著將返回錯誤-這與 Elasticsearch 行為不同,在該行為中,根本不會返回該字段。例如,將上面的內容修改為使用字段“OrigincityName”而不是“OriginCityName”會產生有用的錯誤消息:

?

  • ?
  • ?
  • ?
sql> SELECT OriginCountry, OrigincityName FROM flights LIMIT 1;Bad request [Found 1 problem(s)line 1:23: Unknown column [OrigincityName], did you mean any of [OriginCityName, DestCityName]?]

?

同樣,如果我們嘗試在不兼容的字段上使用函數或表達式,則會出現相應的錯誤。通常,分析器在驗證 AST 時會較早失敗。為了實現這一點,Elasticsearch 必須了解每個字段的索引映射和功能。因此,任何具有安全性訪問 SQL 接口的客戶端都需要適當的權限。

?

如果我們繼續提供每一個請求和相應的回復,我們將最終獲得一篇冗長的博客文章!為了簡潔起見,以下是一些帶有感興趣的注釋的日益復雜的查詢。

?

?

使用 WHERE 及 ORDER BY 來 SELECT

?

“找到飛行時間超過5小時的美國最長10班航班。”

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST /_sql?format=txt{ "query": """ SELECT OriginCityName, DestCityName FROM flights WHERE FlightTimeHour > 5 AND OriginCountry='US' ORDER BY FlightTimeHour DESC LIMIT 10 """}

?

顯示結果是:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
OriginCityName | DestCityName ---------------+-------------------Chicago |Oslo Cleveland |Seoul Denver |Chitose / TomakomaiNashville |Verona Minneapolis |Tokyo Portland |Treviso Spokane |Vienna Kansas City |Zurich Kansas City |Shanghai Los Angeles |Zurich

?

限制行數的運算符因 SQL 實現而異。對于 Elasticsearch SQL,我們在實現LIMIT運算符時與 Postgresql/Mysql 保持一致。

?

?

Math

?

只是一些隨機數字...

?

  • ?
  • ?
  • ?
  • ?
sql> SELECT ((1 + 3) * 1.5 / (7 - 6)) * 2 AS random; random ---------------12.0

?

這代表服務器端對功能執行某些后處理的示例。沒有等效的Elasticsearch DSL查詢。

?

?

?

Functions & Expressions

?

“在2月份之后查找所有航班,該航班的飛行時間大于5小時,并且按照時間最長來排序。”

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST /_sql?format=txt{ "query": """ SELECT MONTH_OF_YEAR(timestamp), OriginCityName, DestCityName FROM flights WHERE FlightTimeHour > 1 AND MONTH_OF_YEAR(timestamp) > 2 ORDER BY FlightTimeHour DESC LIMIT 10 """}

?

顯示結果是:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
MONTH_OF_YEAR(timestamp)|OriginCityName | DestCityName ------------------------+---------------+---------------4 |Chicago |Oslo 4 |Osaka |Spokane 4 |Quito |Tucson 4 |Shanghai |Stockholm 5 |Tokyo |Venice 5 |Tokyo |Venice 5 |Tokyo |Venice 5 |Buenos Aires |Treviso 5 |Amsterdam |Birmingham 5 |Edmonton |Milan

?

這些功能通常需要在 Elasticsearch 中運用 Painless 變形才能達到等效的效果,而 SQL 的功能聲明避免任何腳本編寫。還要注意我們如何在WHERE和SELECT子句中使用該函數。WHERE 子句組件被下推到 Elasticsearch,因為它影響結果計數。SELECT 函數由演示中的服務器端插件處理。

?

請注意,可用功能列表可通過“SHOW FUNCTIONS”檢索

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
sql> SHOW FUNCTIONS; name | type -----------------+---------------AVG |AGGREGATE COUNT |AGGREGATE FIRST |AGGREGATE FIRST_VALUE |AGGREGATE LAST |AGGREGATE LAST_VALUE |AGGREGATE MAX |AGGREGATE ...

?

將其與我們之前的數學能力相結合,我們可以開始制定查詢,對于大多數DSL用戶來說,查詢將非常復雜。

?

“找出最快的2個航班(速度)的距離和平均速度,這些航班在星期一,星期二或星期三上午9點至11點之間離開,并且距離超過500公里。將距離和速度四舍五入到最接近的整數。如果速度相等,請先顯示最長的時間。”

?

首先我們在上面的 DESCRIBE kibana_sample_data_flights 命令的輸出中,我們可以看到FlightTimeHour 是一個 keyword。這個顯然是不對的,因為它是一個數值。也許在最初的設計時這么想的。我們需要把這個字段改為 float 類型的數據。

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
PUT flight1{ "mappings": { "properties": { "AvgTicketPrice": { "type": "float" }, "Cancelled": { "type": "boolean" }, "Carrier": { "type": "keyword" }, "Dest": { "type": "keyword" }, "DestAirportID": { "type": "keyword" }, "DestCityName": { "type": "keyword" }, "DestCountry": { "type": "keyword" }, "DestLocation": { "type": "geo_point" }, "DestRegion": { "type": "keyword" }, "DestWeather": { "type": "keyword" }, "DistanceKilometers": { "type": "float" }, "DistanceMiles": { "type": "float" }, "FlightDelay": { "type": "boolean" }, "FlightDelayMin": { "type": "integer" }, "FlightDelayType": { "type": "keyword" }, "FlightNum": { "type": "keyword" }, "FlightTimeHour": { "type": "float" }, "FlightTimeMin": { "type": "float" }, "Origin": { "type": "keyword" }, "OriginAirportID": { "type": "keyword" }, "OriginCityName": { "type": "keyword" }, "OriginCountry": { "type": "keyword" }, "OriginLocation": { "type": "geo_point" }, "OriginRegion": { "type": "keyword" }, "OriginWeather": { "type": "keyword" }, "dayOfWeek": { "type": "integer" }, "timestamp": { "type": "date" } } }}

?

我們需要 reindex 這個索引。

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST _reindex{ "source": { "index": "flights" }, "dest": { "index": "flight1" }}

?

那么現在 flight1 的數據中,FlightTimeHour 字段將會是一個 float 的類型。我們再次重新設置 alias 為 flights:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST _aliases{ "actions": [ { "add": { "index": "flight1", "alias": "flights" } }, { "remove": { "index": "kibana_sample_data_flights", "alias": "flights" } } ]}

?

那么現在 flights 將是指向 flight1 的一個 alias。

?

我們使用如下的 SQL 語句來查詢:

?

  • ?
  • ?
  • ?
  • ?
  • ?
sql> SELECT timestamp, FlightNum, OriginCityName, DestCityName, ROUND(DistanceMiles) AS distance, ROUND(DistanceMiles/FlightTimeHour) AS speed, DAY_OF_WEEK(timestamp) AS day_of_week FROM flights WHERE DAY_OF_WEEK(timestamp) >= 0 AND DAY_OF_WEEK(timestamp) <= 2 AND HOUR_OF_DAY(timestamp) >=9 AND HOUR_OF_DAY(timestamp) <= 10 ORDER BY speed DESC, distance DESC LIMIT 2; timestamp | FlightNum |OriginCityName | DestCityName | distance | speed | day_of_week ------------------------+---------------+---------------+---------------+---------------+---------------+---------------2020-05-17T10:53:52.000Z|LAJSKLT |Guangzhou |Lima |11398.0 |783.0 |1 2020-04-27T09:30:39.000Z|VLUDO2H |Buenos Aires |Moscow |8377.0 |783.0 |2

? ? ? ? ? ??

一個相當復雜且奇怪的問題,但希望您能明白這一點。還要注意我們如何創建字段別名并在ORDER BY 子句中引用它們。

?

還要注意,不需要在 SELECT 子句中指定 WHERE 和 ORDER BY 中使用的所有字段。這可能與您過去使用的 SQL 實現不同。例如,以下內容完全正確:

?

  • ?
  • ?
  • ?
  • ?
POST /_sql{ "query":"SELECT timestamp, FlightNum FROM flights WHERE AvgTicketPrice > 500 ORDER BY AvgTicketPrice"}

?

它顯示:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
{ "columns" : [ { "name" : "timestamp", "type" : "datetime" }, { "name" : "FlightNum", "type" : "text" } ], "rows" : [ [ "2020-04-26T09:04:20.000Z", "QG5DXD3" ], [ "2020-05-02T23:18:27.000Z", "NXA71BT" ], [ "2020-04-17T01:55:18.000Z", "VU8K9DM" ], [ "2020-04-24T08:46:45.000Z", "UM8IKF8" ],...]

?

?

將SQL查詢轉換為DSL

?

我們都曾嘗試過要在 Elasticsearch DSL 中表達的 SQL 查詢,或者想知道它是否是最佳的。新 SQL 接口的引人注目的功能之一是它能夠協助 Elasticsearch 的新采用者解決此類問題。使用 REST 接口,我們只需將/translate附加到“sql”端點,即可獲取驅動程序將發出的Elasticsearch 查詢。

?

讓我們考慮一下以前的一些查詢:

?

  • ?
  • ?
  • ?
  • ?
POST /_sql/translate{ "query": "SELECT OriginCityName, DestCityName FROM flights WHERE FlightTimeHour > 5 AND OriginCountry='US' ORDER BY FlightTimeHour DESC LIMIT 10"}

?

對于任何有經驗的 Elasticsearch 用戶,等效的 DSL 都應該是顯而易見的:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
{ "size" : 10, "query" : { "bool" : { "must" : [ { "range" : { "FlightTimeHour" : { "from" : 5, "to" : null, "include_lower" : false, "include_upper" : false, "boost" : 1.0 } } }, { "term" : { "OriginCountry.keyword" : { "value" : "US", "boost" : 1.0 } } } ], "adjust_pure_negative" : true, "boost" : 1.0 } }, "_source" : { "includes" : [ "OriginCityName", "DestCityName" ], "excludes" : [ ] }, "sort" : [ { "FlightTimeHour" : { "order" : "desc", "missing" : "_first", "unmapped_type" : "float" } } ]}

?

WHERE 子句將按您期望的那樣轉換為 range 和 term 查詢。請注意,子字段的OriginCountry.keyword變體如何用于與父代 OriginCountry(文本類型)的精確匹配。不需要用戶知道基礎映射的行為差異-正確的字段類型將會被自動選擇。有趣的是,該接口嘗試通過在 _source 上使用?docvalue_fields 來優化檢索性能,例如適用于啟用了 doc 值的確切類型(數字,日期,關鍵字)。我們可以依靠 Elasticsearch SQL 為指定的查詢生成最佳的 DSL。

?

現在考慮我們上次使用的最復雜的查詢:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
POST /_sql/translate{ "query": """ SELECT timestamp, FlightNum, OriginCityName, DestCityName, ROUND(DistanceMiles) AS distance, ROUND(DistanceMiles/FlightTimeHour) AS speed, DAY_OF_WEEK(timestamp) AS day_of_week FROM flights WHERE DAY_OF_WEEK(timestamp) >= 0 AND DAY_OF_WEEK(timestamp) <= 2 AND HOUR_OF_DAY(timestamp) >=9 AND HOUR_OF_DAY(timestamp) <= 10 ORDER BY speed DESC, distance DESC LIMIT 2 """}

?

上面的響應為:

?

  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
  • ?
{ "size" : 2, "query" : { "bool" : { "must" : [ { "script" : { "script" : { "source" : "InternalSqlScriptUtils.nullSafeFilter(InternalSqlScriptUtils.and(InternalSqlScriptUtils.gte(InternalSqlScriptUtils.dateTimeChrono(InternalSqlScriptUtils.docValue(doc,params.v0), params.v1, params.v2), params.v3), InternalSqlScriptUtils.lte(InternalSqlScriptUtils.dateTimeChrono(InternalSqlScriptUtils.docValue(doc,params.v4), params.v5, params.v6), params.v7)))", "lang" : "painless", "params" : { "v0" : "timestamp", "v1" : "Z", "v2" : "HOUR_OF_DAY", "v3" : 9, "v4" : "timestamp", "v5" : "Z", "v6" : "HOUR_OF_DAY", "v7" : 10 } }, "boost" : 1.0 } }, { "script" : { "script" : { "source" : "InternalSqlScriptUtils.nullSafeFilter(InternalSqlScriptUtils.and(InternalSqlScriptUtils.gte(InternalSqlScriptUtils.dayOfWeek(InternalSqlScriptUtils.docValue(doc,params.v0), params.v1), params.v2), InternalSqlScriptUtils.lte(InternalSqlScriptUtils.dayOfWeek(InternalSqlScriptUtils.docValue(doc,params.v3), params.v4), params.v5)))", "lang" : "painless", "params" : { "v0" : "timestamp", "v1" : "Z", "v2" : 0, "v3" : "timestamp", "v4" : "Z", "v5" : 2 } }, "boost" : 1.0 } } ], "adjust_pure_negative" : true, "boost" : 1.0 } }, "_source" : { "includes" : [ "FlightNum", "OriginCityName", "DestCityName", "DistanceMiles", "FlightTimeHour" ], "excludes" : [ ] }, "docvalue_fields" : [ { "field" : "timestamp", "format" : "epoch_millis" } ], "sort" : [ { "_script" : { "script" : { "source" : "InternalSqlScriptUtils.nullSafeSortNumeric(InternalSqlScriptUtils.round(InternalSqlScriptUtils.div(InternalSqlScriptUtils.docValue(doc,params.v0),InternalSqlScriptUtils.docValue(doc,params.v1)),params.v2))", "lang" : "painless", "params" : { "v0" : "DistanceMiles", "v1" : "FlightTimeHour", "v2" : null } }, "type" : "number", "order" : "desc" } }, { "_script" : { "script" : { "source" : "InternalSqlScriptUtils.nullSafeSortNumeric(InternalSqlScriptUtils.round(InternalSqlScriptUtils.docValue(doc,params.v0),params.v1))", "lang" : "painless", "params" : { "v0" : "DistanceMiles", "v1" : null } }, "type" : "number", "order" : "desc" } } ]}

?

是不是覺得非常復雜啊?

?

我們的 WHERE 和 ORDER BY 子句已轉換為 painless 腳本,并在 Elasticsearch 提供的排序和腳本查詢中使用。這些腳本甚至被參數化以避免編譯并利用腳本緩存。

?

附帶說明一下,盡管以上內容代表了 SQL 語句的最佳翻譯,但并不代表解決更廣泛問題的最佳解決方案。實際上,我們希望在索引時間對文檔中的星期幾,一天中的小時和速度進行編碼,因此可以只使用簡單的范圍查詢。這可能比使用painless 腳本解決此特定問題的性能更高。實際上,由于這些原因,其中的某些字段實際上甚至已經存在于文檔中。這是用戶應注意的常見主題:盡管我們可以依靠 Elasticsearch SQL 實現為我們提供最佳翻譯,但它只能利用查詢中指定的字段,因此不一定能為更大的問題查詢提供最佳解決方案。為了實現最佳方法,需要考慮基礎平臺的優勢,而 _translate API 可能是此過程的第一步。

?

參考:https://elasticstack.blog.csdn.net/article/details/105199768

總結

以上是生活随笔為你收集整理的Elasticsearch SQL介绍及实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

91久久影院 | .精品久久久麻豆国产精品 亚洲va欧美 | 久久精品91视频 | 91精品免费在线观看 | 狠狠狠色丁香综合久久天下网 | 久久99影院| 免费网站观看www在线观看 | 天天干天天操天天入 | 久久免费观看少妇a级毛片 久久久久成人免费 | 日韩久久一区二区 | 一级黄色毛片 | 中文字幕欧美三区 | 毛片无卡免费无播放器 | av在线免费在线观看 | 狠狠色伊人亚洲综合成人 | 久久久999免费视频 日韩网站在线 | 99免费在线视频 | 精品久久久久久国产 | 国产精品久久久久久久久久99 | 日韩99热 | 狠狠色丁香婷婷综合久久片 | 丁香花在线视频观看免费 | 97理论片 | 91mv.cool在线观看 | av在线免费在线 | 9热精品 | 国产91精品一区二区麻豆网站 | 国产亚洲aⅴaaaaaa毛片 | 正在播放日韩 | 182午夜在线观看 | 国产福利免费在线观看 | 精品国产午夜 | 国产原创中文在线 | 美女视频黄色免费 | 国产3p视频 | 黄色aaa毛片 | 色婷婷av一区| 亚洲黄色片在线 | 久久精品爱爱视频 | 国产精品久久麻豆 | 欧美另类巨大 | 天天操天天射天天添 | 国产伦精品一区二区三区免费 | 五月天狠狠操 | 国产一级视频免费看 | 99久久电影 | 久久夜色精品国产欧美乱 | 免费欧美| 最新不卡av| zzijzzij亚洲日本少妇熟睡 | 日韩欧美视频在线免费观看 | 国产精品久久久久久久婷婷 | 伊人手机在线 | 888av| 在线视频中文字幕一区 | 国产精品久久久久永久免费观看 | 五月激情丁香图片 | 日韩激情久久 | 看污网站| 久草免费在线观看视频 | 天天操夜夜做 | 久久免费国产精品 | 丁香婷婷激情啪啪 | 欧美国产日韩激情 | 免费精品在线 | 精品久久久久久久久久久久 | 麻豆精品视频在线 | 人人舔人人 | 一本一本久久a久久 | 在线观看福利网站 | 91av亚洲 | 国产一级黄色电影 | 伊人狠狠色丁香婷婷综合 | 黄色大全免费网站 | 久久久久久影视 | 福利视频一区二区 | 91九色网站| 国产粉嫩在线观看 | 国产精品视频久久久 | 国产在线一线 | 亚洲一区二区三区四区在线视频 | 一区二区中文字幕在线播放 | 久99视频| 天天综合操 | 免费看色视频 | 99热最新精品 | 国产一二区精品 | 草在线视频| 国产精品久久久久久婷婷天堂 | 婷婷新五月 | 超薄丝袜一二三区 | 欧美性粗大hdvideo | 免费观看一区 | 亚洲国产97在线精品一区 | 中文字幕在线观看亚洲 | 久草剧场 | 99精品在线免费在线观看 | 国产97av| 在线观看亚洲精品 | 欧美日韩中 | av在线日韩 | 视频一区二区三区视频 | 中文字幕一区二 | 国产午夜亚洲精品 | 一区二区三区av在线 | 香蕉视频在线免费 | 久久人人爽视频 | 国产原创中文在线 | 成人免费av电影 | 最新av网址在线观看 | 亚洲精品456在线播放 | 夜夜操天天 | 亚洲日本精品视频 | 亚洲国产精品va在线看黑人 | 日韩高清片 | 四虎国产免费 | 天天干天天操天天做 | 91精彩在线视频 | 国产精品国产三级国产aⅴ9色 | 97超碰免费在线观看 | 成人黄色小说视频 | 香蕉在线视频播放网站 | 九九视频免费在线观看 | 一区精品在线 | 国产美女无遮挡永久免费 | 成年人免费看片网站 | 亚洲精品视频在线播放 | 久久色亚洲 | 999久久国精品免费观看网站 | 国产精品欧美日韩 | 日韩黄色大片在线观看 | 婷婷午夜激情 | 摸阴视频| 成人av网站在线观看 | 免费成视频 | 在线免费亚洲 | 欧美色图亚洲图片 | 国产裸体视频网站 | 中文字幕在线看视频 | 狠狠色丁婷婷日日 | av在线永久免费观看 | 国产91国语对白在线 | 黄色免费网站 | 狠狠干天天操 | 亚洲综合色视频在线观看 | 日日干天天射 | www.99热精品 | 一本一本久久aa综合精品 | 成人午夜电影在线播放 | 国产精品久久网站 | 久久久久国产一区二区 | 韩日电影在线 | 日韩一区视频在线 | 丁香婷婷深情五月亚洲 | 色成人亚洲 | 啪嗒啪嗒免费观看完整版 | 91免费视频黄 | 日韩专区在线播放 | 中文字幕一区2区3区 | 亚洲精品国内 | 在线播放你懂 | 国产最新在线视频 | 欧美福利在线播放 | 777奇米四色 | 一本大道久久精品懂色aⅴ 五月婷社区 | 久久免费的精品国产v∧ | 久久精品视频免费播放 | 日韩理论片在线观看 | 超碰在线色 | 最近中文字幕国语免费av | 综合久久一本 | 久久96国产精品久久99漫画 | 97碰碰精品嫩模在线播放 | 美女久久久久久久 | 中文字幕在线一区二区三区 | 国产网站在线免费观看 | bbw av| 成年人视频在线免费播放 | 国产精品 国内视频 | 亚洲午夜不卡 | 国产视频美女 | 欧美日韩综合在线 | 狠狠躁18三区二区一区ai明星 | 国产黄色网 | 国内偷拍精品视频 | 欧美色婷 | 777奇米四色 | 亚洲精品高清视频在线观看 | 亚洲国产网址 | 久草在线视频资源 | 91精品国产电影 | 特级黄色视频毛片 | 最近中文字幕免费观看 | 99视频在线精品免费观看2 | 成人黄色毛片 | 天天操 夜夜操 | 欧美性春潮 | 国产精品欧美一区二区三区不卡 | 中文字幕二区在线观看 | 中文字幕 国产专区 | 天天操天天干天天 | 99久久精品国产一区二区成人 | 国产91影视 | 国产一卡久久电影永久 | 精品专区一区二区 | 99精品一区二区 | 久久高清毛片 | 久久久噜噜噜久久久 | 中文字幕一区二区三区在线视频 | 免费毛片一区二区三区久久久 | 手机av电影在线 | 亚洲欧洲日韩在线观看 | 中文字幕在线乱 | 三级视频国产 | 亚洲综合网站在线观看 | 欧亚日韩精品一区二区在线 | 最新国产在线视频 | 综合久久久久久久久 | 99色人| 欧美va日韩va | 伊人射| 久久超| 免费观看一区二区三区视频 | 99av国产精品欲麻豆 | 国产视频69| 美女搞黄国产视频网站 | 国产福利91精品张津瑜 | avsex| 亚洲精品视频二区 | 婷婷久久一区二区三区 | 久久精品男人的天堂 | 狠狠综合 | 亚洲 欧美 变态 国产 另类 | 日韩网站视频 | 久久9999久久 | 免费一级片在线观看 | 五月天亚洲精品 | 青春草免费在线视频 | 91久久国产综合精品女同国语 | 三级在线国产 | 日韩精品亚洲专区在线观看 | 国产精品一区二区三区电影 | 狠狠操狠狠 | 国产麻豆电影在线观看 | 欧美超碰在线 | 一级a性色生活片久久毛片波多野 | 日韩av成人在线 | 美女福利视频一区二区 | 久久久久久免费网 | av在线电影免费观看 | 久久国产电影院 | 久久久久久激情 | 国产精品久久久久久久久久久久午 | 天天色天天综合 | 精品国产乱码久久久久 | 99爱视频在线观看 | 91麻豆操| 丁香五月网久久综合 | 国产91免费在线 | 久久99国产精品久久99 | 日韩美女免费线视频 | 日韩精品一区二区三区免费视频观看 | 精品久久久久免费极品大片 | 美女精品国产 | 日韩欧美在线观看一区二区三区 | 91精品国产一区二区三区 | 久草在线中文视频 | 欧美激情第一区 | 丁香六月欧美 | 欧美日韩免费一区二区 | 中文字幕免费高清 | 亚洲黄色片一级 | 天天色天天射综合网 | 国产一区二区三区高清播放 | 国产色啪| 成年人黄色大片在线 | 三级av免费| 日韩在线一区二区免费 | 久章草在线 | 国产精品第一 | 亚洲欧洲av | 中文字幕欧美日韩va免费视频 | 欧美污污网站 | 久久这里有 | 国产一区二区精品久久91 | 亚州精品天堂中文字幕 | 国产精品一区二区 91 | 亚洲第一区在线观看 | 久久三级毛片 | 五月亚洲综合 | 亚洲精品国偷自产在线99热 | 国产精品夜夜夜一区二区三区尤 | 久久999精品 | 日本中文字幕网站 | 色婷婷六月 | 日韩在线观看视频中文字幕 | 欧美一区二区三区在线观看 | 国产亚洲精品中文字幕 | 中文字幕色在线视频 | 亚洲理论片 | 九九九九免费视频 | 国产精品久久久久久久久久久久久 | 亚洲国产片 | 色99视频| 国产在线播放一区 | 亚洲国产精品一区二区久久hs | 亚洲高清网站 | 亚洲日本韩国一区二区 | 久草香蕉在线 | 九色视频网址 | 久久天天躁狠狠躁亚洲综合公司 | 最新黄色av网址 | 91麻豆精品 | 人人狠狠综合久久亚洲 | 欧美性生活一级片 | 欧美日韩久久一区 | 午夜精品一二区 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 色多多污污 | 国产精品一区专区欧美日韩 | 中文字幕一区二 | 黄色三级免费片 | 久久精品日产第一区二区三区乱码 | 天天综合网入口 | 国产免费黄视频在线观看 | av在线电影免费观看 | 国产精品久久久久久五月尺 | 天天干天天干天天干天天干天天干天天干 | 亚洲不卡av一区二区三区 | 色鬼综合网 | 久久99国产精品免费 | 97人人视频 | 亚洲精品9 | 伊人亚洲精品 | 国产一级片久久 | www.色婷婷| 天天综合天天做天天综合 | 久久国产手机看片 | 久久优 | 久久黄色小说 | 一区二区三区中文字幕在线观看 | 中文字幕一区二区三区久久 | 特级黄录像视频 | a级免费观看 | 91资源在线播放 | 亚洲日本va在线观看 | 探花视频在线观看 | www操操操| 久久情网 | 久久久福利影院 | 日韩在线色 | 久久在视频 | 欧美国产精品久久久久久免费 | 亚洲国产影院 | 久操视频在线 | 天天爱综合 | 免费观看一区二区 | 天天色综合三 | 亚洲精品 在线视频 | 免费在线黄色av | 国产精品久久在线观看 | 一区二区不卡高清 | 免费看三片 | 国产精品 亚洲精品 | 在线观看国产www | 视频一区二区国产 | 国产韩国日本高清视频 | 国产玖玖在线 | 欧美日韩色婷婷 | 久久久久女人精品毛片九一 | 一级免费片| 亚洲国产欧美在线看片xxoo | 91av在线国产| 国产高清不卡一区二区三区 | 亚洲欧洲精品久久 | 天天爽夜夜爽人人爽一区二区 | 天天综合狠狠精品 | 国产在线观看免费 | 欧美成人中文字幕 | 午夜电影 电影 | 久久久免费看片 | 免费视频 你懂的 | 狠狠狠色丁香婷婷综合激情 | 成人网在线免费视频 | 欧美成年网站 | 人人狠狠综合久久亚洲 | 美女视频黄的免费的 | 免费a一级 | 精品国产乱码 | 中文字幕免费播放 | 亚洲成年人av | 8x8x在线观看视频 | 在线观看免费成人av | 91精品啪在线观看国产81旧版 | 国产婷婷色 | 91视频在线免费 | 天天曰天天射 | 99一级片| 中文字幕中文中文字幕 | 久久色在线播放 | 六月丁香婷婷网 | 色在线视频 | 91久久久久久国产精品 | 公与妇乱理三级xxx 在线观看视频在线观看 | 亚洲精品国偷拍自产在线观看蜜桃 | 91中文字幕在线观看 | 天天射射天天 | 国产在线视频导航 | 福利一区二区三区四区 | 中文字幕视频播放 | 欧美综合色在线图区 | 久久99精品国产麻豆宅宅 | 国产一区二区在线视频观看 | 欧美一区二区三区激情视频 | 乱男乱女www7788 | 久久的色 | 综合网在线视频 | 97精品国产97久久久久久春色 | 欧美色精品天天在线观看视频 | 一级黄网 | 最近的中文字幕大全免费版 | 五月天堂色 | 精品国产一区二区三区久久久久久 | 国产精品一区二区三区观看 | 蜜臀av性久久久久蜜臀av | 日韩免费区 | 成人久久18免费网站麻豆 | 免费日韩av片 | 亚洲波多野结衣 | 久香蕉| 最近2019好看的中文字幕免费 | 久久深夜福利免费观看 | 在线观看岛国av | 天天操天天摸天天爽 | 在线观看片| 久草视频2| 国产精品一区二区视频 | 好看的国产精品视频 | 91av综合| 国产午夜在线 | 天天操夜夜逼 | 免费在线观看av网站 | 精品久久五月天 | 在线成人高清电影 | 久久精品五月 | 韩国一区二区三区在线观看 | 精品亚洲va在线va天堂资源站 | 91成人精品国产刺激国语对白 | 成年人在线看片 | 人人艹人人 | 国产精品理论片 | 中文字幕在线播放一区二区 | 高清有码中文字幕 | 开心激情五月网 | 国产精品女人久久久久久 | av成人免费在线看 | 免费一级片在线观看 | 久久五月婷婷丁香社区 | 日韩精品一区二区三区在线视频 | 国产九九九精品视频 | 免费在线观看黄网站 | 国产精品欧美久久 | 97成人精品 | av免费观看在线 | www.久久91 | 亚洲精品色婷婷 | 色婷婷久久 | 久久久精品小视频 | av中文在线播放 | 在线观看av国产 | 99视频精品免费视频 | 亚洲 综合 国产 精品 | 日本中文字幕系列 | 色偷偷网站视频 | 成人免费网视频 | 成 人 a v天堂 | 日本丰满少妇免费一区 | 在线亚洲欧美日韩 | 伊人热 | 国产aa精品 | 日日插日日干 | 中文字幕免费国产精品 | 国产精品专区一 | 国产成人精品亚洲精品 | 亚洲欧洲日韩在线观看 | 中文av在线播放 | 色婷婷亚洲综合 | 日韩在线影视 | 在线免费色视频 | 国产亚洲精品久久久久久电影 | 三级av免费看 | 成人毛片一区 | 天天草天天干天天射 | 免费男女羞羞的视频网站中文字幕 | 美女国产| 91中文字幕视频 | 久久 亚洲视频 | 在线播放国产一区二区三区 | 亚洲精品av在线 | 97在线观看免费观看 | 97超碰资源站 | 在线观看不卡的av | 91麻豆.com| 国产999精品久久久久久麻豆 | 在线观看国产麻豆 | 激情网综合 | 午夜精品久久久久久久99热影院 | 国产一区二区在线视频观看 | 久久久久久久久久久久久国产精品 | 天天射天天色天天干 | 97人人模人人爽人人喊中文字 | 亚洲在线观看av | 国产视频精品在线 | 久久国产精品系列 | 97超碰人人澡人人爱学生 | 色网站在线免费观看 | 最新超碰在线 | 国产一区二区高清 | 黄色午夜 | 日韩成人免费在线观看 | 欧美激情另类 | 亚洲日本va中文字幕 | 国产麻豆成人传媒免费观看 | 久草免费在线观看 | av免费播放 | 久久久精品网站 | 四虎影视成人永久免费观看亚洲欧美 | 国产成人l区 | 国产污视频在线观看 | 久久精品站 | 中文超碰字幕 | 欧美网站黄色 | 四虎影视成人精品 | 久久激五月天综合精品 | 中文字幕一区二区三区在线观看 | 国产一区二区三区黄 | 日韩天天操 | 欧美在线观看视频免费 | 国产中文字幕第一页 | 天无日天天操天天干 | 欧美午夜理伦三级在线观看 | 在线91视频 | 国产人成看黄久久久久久久久 | 亚洲女人天堂成人av在线 | 欧美成人区 | 国产精品久久久久一区二区 | 久久精品伊人 | 精品国内自产拍在线观看视频 | 久久精品欧美 | 亚洲精品美女视频 | 国产精品久久久久久久久久久久午夜片 | 久久精品久久综合 | 九九综合九九综合 | 热re99久久精品国产66热 | 亚洲精品在线电影 | 99热精品国产一区二区在线观看 | 日本久久久亚洲精品 | 中文字幕一区二区三区精华液 | 国产一区高清在线 | 2021国产在线 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 超碰成人网| 亚洲高清在线视频 | 日本99精品| 97精品国产91久久久久久 | 国产视频97 | 人人舔人人爽 | 激情大尺度视频 | 久久久久久蜜av免费网站 | 国产一区在线视频观看 | www色,com | www免费视频com━ | 二区三区视频 | 久久99久久99精品 | 在线观看国产一区 | 亚洲色图美腿丝袜 | 丁香五月亚洲综合在线 | 精品国产一区二区三区在线观看 | 成 人 黄 色视频免费播放 | 操操色| 免费看黄在线观看 | 欧美日韩在线观看一区二区三区 | 国产拍揄自揄精品视频麻豆 | 精品国产福利在线 | 91精品视频网站 | 一区二区电影网 | 91伊人久久大香线蕉蜜芽人口 | 丁香五月缴情综合网 | 久草精品视频 | 午夜黄色一级片 | 亚洲一级片 | 久久人人爽人人爽 | 日韩精品大片 | 亚洲一区欧美激情 | 欧美精品一区二区免费 | 国产精品黄色影片导航在线观看 | 久久免费影院 | 黄色av影视| a天堂中文在线 | 日韩av快播电影网 | 蜜桃av人人夜夜澡人人爽 | 天天操天天舔天天干 | 99精品视频免费在线观看 | 久久与婷婷 | 国产免费小视频 | 久久刺激视频 | 久久免费视频这里只有精品 | 日韩激情av在线 | 中文字幕av最新更新 | 国产成人a v电影 | 国产精品一二三 | 中文字幕成人网 | 最新免费中文字幕 | 在线观看视频你懂的 | 亚洲午夜久久久久久久久电影网 | 日韩精品中文字幕在线不卡尤物 | 亚洲狠狠 | 2022国产精品视频 | 精品久久久久久久久久 | 国产一区欧美一区 | av网站在线观看播放 | 操操色| 精品国偷自产国产一区 | 午夜视频在线瓜伦 | 日韩在线在线 | 亚洲毛片久久 | 96视频免费在线观看 | 啪啪精品| 超碰av在线免费观看 | 99久久成人 | 九九热免费在线视频 | 久久国产精品电影 | 日精品| 欧美日韩国语 | 亚洲激情视频 | 国产视频精品视频 | 四虎成人在线 | 黄色的网站免费看 | 国产精品99免视看9 国产精品毛片一区视频 | 国产成人在线观看 | 国产999精品久久久久久麻豆 | 国产一区二区免费看 | 久久精品欧美 | 久久精品欧美一区二区三区麻豆 | 国产视频精品久久 | 五月综合婷 | 成人综合婷婷国产精品久久免费 | 91手机电视 | 亚洲日b视频 | 国产主播大尺度精品福利免费 | 午夜视频播放 | 色婷婷视频在线观看 | 国产视频在线免费观看 | 色在线免费观看 | 成年人看片网站 | 午夜久久久久久久久久久 | 国产专区日韩专区 | av大全在线观看 | 日韩在线观看三区 | 亚洲经典中文字幕 | 西西www444 | а天堂中文最新一区二区三区 | 在线观看av不卡 | 91精品999 | 久久尤物电影视频在线观看 | 婷婷视频在线播放 | 精品国产一区二区三区四区在线观看 | 国产91精品看黄网站 | 波多野结衣在线视频免费观看 | 精品国产综合区久久久久久 | 国产福利一区在线观看 | 国产小视频免费在线网址 | 亚洲激情国产精品 | 国产精品一区二区免费 | www.黄色小说.com | 免费高清在线观看电视网站 | 区一区二在线 | 天天干天天做 | 91福利免费 | 欧美黄色免费 | 亚洲综合精品在线 | 亚洲日本黄色 | 国产在线欧美 | 国产亚洲精品久久久久久无几年桃 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 欧美在线99 | 玖玖在线观看视频 | 中文字幕一区二区三区在线播放 | 在线 视频 一区二区 | 欧美视频xxx | 99在线视频精品 | 久久不射电影院 | 五月综合婷| 成人在线小视频 | 亚洲欧洲精品视频 | 欧美成年人在线观看 | 在线免费观看国产精品 | 在线免费观看涩涩 | av日韩在线网站 | 日韩久久久久久久久 | 91久久精| 国产成人福利 | 日本精品va在线观看 | 91福利视频一区 | 亚洲另类久久 | 久久免费视频一区 | 亚洲精品乱码 | 国内偷拍精品视频 | 日韩欧美一区二区三区免费观看 | 伊人天天狠天天添日日拍 | 久久久久久国产精品 | 亚洲欧洲精品一区二区精品久久久 | 在线电影中文字幕 | 99精品偷拍视频一区二区三区 | 成年人看片 | 精品亚洲一区二区三区 | 精品一区二区在线播放 | 日本精品一区二区在线观看 | 欧美韩国日本在线 | 久久综合亚洲鲁鲁五月久久 | 麻花豆传媒mv在线观看网站 | 九九热在线观看 | 波多野结衣精品视频 | 日日夜夜免费精品视频 | 免费影视大全推荐 | 激情五月看片 | 美女精品国产 | 亚洲麻豆精品 | 香蕉在线视频播放网站 | a天堂在线看 | 久久久91精品国产 | 午夜视频日本 | 成人h在线| 亚洲精品日韩一区二区电影 | 国产成人在线网站 | 天天天色综合 | 久草精品视频 | 久久tv视频 | 免费av网站观看 | 伊在线视频 | 久久免费黄色大片 | 91激情视频在线观看 | 亚洲综合丁香 | 国产看片网站 | 日韩特黄一级欧美毛片特黄 | 日韩av免费网站 | 日本狠狠干 | 亚洲h色精品 | 欧美久久久一区二区三区 | 成人av视屏 | 91天天视频 | 国产精品一区免费看8c0m | 国产.精品.日韩.另类.中文.在线.播放 | 高清在线观看av | 丁香花中文字幕 | 精品一区中文字幕 | 成年人免费看 | 久久久久久国产精品美女 | 天天亚洲| 欧美性久久久久久 | 九草在线观看 | 国内成人精品视频 | 欧美日韩视频在线播放 | 日精品在线观看 | 成人a级网站 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 中文在线www | 日韩丝袜视频 | 综合色综合色 | 91在线精品观看 | 中文字幕在线观看播放 | 91在线一区二区 | 国产不卡在线播放 | 草久在线观看视频 | 五月婷婷免费 | 日韩精品综合在线 | 在线免费观看国产精品 | 国产婷婷久久 | 免费看久久久 | 欧美色黄| 日韩中文字幕a | 国产乱码精品一区二区三区介绍 | 在线免费高清一区二区三区 | 免费久草视频 | 欧美一二区视频 | www.夜夜操.com| 亚洲精品在线一区二区三区 | 国产福利a | 韩日成人av | 狠狠干激情 | 韩国av永久免费 | 天天天综合网 | 国产精品婷婷 | av在线免费观看不卡 | 久久精品久久久久电影 | 精品国产一区二区三区久久久久久 | 久久久综合精品 | 超碰在线公开免费 | 国产精品久久一卡二卡 | 日本精品一区二区三区在线观看 | 国产在线观看地址 | 99色精品视频 | 久操视频在线播放 | 日韩av一区二区在线播放 | 国产成人精品一区一区一区 | 国产免费一区二区三区最新6 | 9在线观看免费高清完整 | 亚洲视频在线免费观看 | 成人免费看黄 | 中文字幕视频免费观看 | 免费av 在线 | 九九欧美 | 奇米影视8888 | 欧美日韩一区二区视频在线观看 | 97天堂网 | 中文字幕在线一区二区三区 | 国产69精品久久app免费版 | 天堂久久电影网 | 狠狠躁夜夜a产精品视频 | 99久久精品久久亚洲精品 | 亚洲电影自拍 | 国产美女永久免费 | 亚洲另类视频 | 日本三级人妇 | 久久在草| 在线免费观看羞羞视频 | 亚洲三级黄 | 精品一二三区视频 | 日韩精品久久久久久中文字幕8 | 九九九热视频 | 亚洲久草在线 | 九九视频网 | 欧美日韩不卡在线 | 国产乱对白刺激视频在线观看女王 | 久久美女精品 | av免费在线观看1 | 在线观看免费 | 色婷婷激情五月 | 国产999精品 | 国产精品二区三区 | 日韩视频二区 | 中文字幕亚洲综合久久五月天色无吗'' | 精品国产a | 国产成人精品在线观看 | 特片网久久 | 在线最新av | 亚洲国产影院av久久久久 | 欧美日韩高清在线一区 | 精品久久久久久久久久久院品网 | 国产精品久久久久久久久久久免费 | 2019精品手机国产品在线 | www.看片网站| 成人一级片在线观看 | 国产成人黄色片 | 久久中文字幕导航 | 天天色天天操综合 | 精品超碰 | 成人18视频| 美女视频永久黄网站免费观看国产 | 香蕉在线观看 | 精品国产一区二区三区久久 | 久久久国产精华液 | 久久久久久亚洲精品 | 午夜免费在线观看 | 国产视频精品免费播放 | 国产精彩视频一区二区 | 91香蕉视频在线 | 久久亚洲精品国产亚洲老地址 | 91在线欧美| 亚洲在线视频免费 | 欧美五月婷婷 | 99国产成+人+综合+亚洲 欧美 | 亚洲成av人电影 | 国产成人精品一区二区三区网站观看 | 国产一区在线精品 | 91精品视频一区 | 97成人精品视频在线播放 | 日韩精品一卡 | 国产成人精品三级 | 久久一区二区三区四区 | 久久久影院一区二区三区 | 国产高清久久 | 久久视频这里有久久精品视频11 | 一级α片 | 日韩高清三区 | 亚洲午夜久久久久久久久电影网 | 在线观看国产v片 | 蜜桃视频在线观看一区 | 天天色婷婷 | 91av影视| 1000部国产精品成人观看 | 日韩有码在线播放 | 婷婷5月激情5月 | 日韩欧美一区二区三区在线 | 久久视频免费在线 | 中文字幕在线观看网站 | 久久夜色精品国产亚洲aⅴ 91chinesexxx | 免费色婷婷 | 亚洲国产精品小视频 | 天天爱天天操 | 亚洲一级特黄 | 一级久久精品 | 91麻豆精品国产自产在线游戏 | 青青草国产精品视频 | 免费在线观看视频a | 国产精品综合久久久久久 | 蜜桃视频成人在线观看 | 人人爱在线视频 | 久久精品—区二区三区 | 久久曰视频 | 亚洲综合视频在线播放 | www.精选视频.com | 91成人网在线 | 国产精品久久精品国产 | 激情深爱| 欧美日韩久 | 91字幕| 色片网站在线观看 | 久久香蕉国产 | 欧美做受高潮 | 亚洲美女免费精品视频在线观看 | 99九九99九九九视频精品 | 免费视频91 | 久久热亚洲 | 黄色app网站在线观看 | 国产精品一区二区在线免费观看 | 91精品国产99久久久久久红楼 | av线上免费看 | 三三级黄色片之日韩 | 日韩欧美成人网 | 国产视频2区| 一区二区三区手机在线观看 | 久久久蜜桃一区二区 | 国产一级淫片在线观看 | 国产精品成人一区 | 色欧美88888久久久久久影院 | 国产精品毛片久久蜜 | 91麻豆国产福利在线观看 | 久久精品看 | 色综合天天狠天天透天天伊人 | 天天操综合网站 | 99久久精品日本一区二区免费 | 成人免费视频网 | 碰超在线观看 | 国产永久网站 | 国产一区播放 | 国产综合91 | 日韩大片在线 | 午夜视频在线网站 | 在线观看久久 | 国产一区二区久久久 | 在线国产激情视频 | 日韩亚洲国产精品 | 午夜精品久久久久99热app | 国产精品wwwwww | 免费a级黄色毛片 | 香蕉视频网址 | 成人免费视频视频在线观看 免费 | 亚洲精品网址在线观看 | 在线观看视频一区二区 | 欧美成年人在线观看 | 欧美一区二区精品在线 | 九九久久精品视频 | 国产精品国产亚洲精品看不卡15 | 国产一级黄色片免费看 | 国产剧在线观看片 | 91私密保健| 91爱爱电影 | 亚洲精品在线一区二区 | 91香蕉亚洲精品 | 亚洲天堂精品视频 | 日韩视频1区 | 美女网色 | 免费大片av | 人人干在线观看 | 国产伦精品一区二区三区… | 日本中文字幕在线看 | 麻豆国产精品va在线观看不卡 | 色婷婷激情四射 | 国产亚洲婷婷免费 | 免费能看的黄色片 | 国产99久久九九精品 | va视频在线 | 色天天 | 中文字幕一区二区三区久久 | 麻豆视屏 | 国产电影黄色av | 日韩久久片| 顶级bbw搡bbbb搡bbbb | 日韩久久一区 | www国产精品com | 丁香六月婷婷开心婷婷网 | av福利在线导航 | 亚洲精品播放 | 色噜噜狠狠狠狠色综合久不 | 美女视频一区二区 | 亚洲视频观看 | 蜜臀久久99精品久久久无需会员 |