簡體   English   中英

Marklogic在光纖Java API中執行SQL查詢

[英]Marklogic execute sql query in optic Java API

我正在使用Marklogic Java Optic API,並且想對CTS查詢返回的全文搜索結果執行sql查詢。 我的代碼由cts.andQuery()組成,我想對cts查詢結果執行sql查詢。 就像是:

ModifyPlan modifyPlan = planBuilder.fromView(getSchemaName(), getViewName())
.select("col_1","col_2")
.where(planBuilder.cts.andQuery(planBuilder.cts.wordQuery("val1"), planBuilder.cts.wordQuery("val2") ));

上面的代碼有效,但是我想在我的java類中對此結果應用sql查詢。

您可以擴展自己想做的事情和遇到的障礙嗎?

上面的查詢是一個關系查詢-它檢索行,但僅檢索與cts.query匹配的文檔中填充的行。

如果將where()操作放在select()操作之前,則該操作序列在概念上等效於引擎如何執行這些操作。

“光學”構建器提供與SQL子句等效的操作,包括

  • select()進行投影
  • 列布爾表達式上的where()用於過濾
  • groupBy()進行聚合
  • joinInner()或joinLeftOuter()用於視圖之間的聯接

等等。 您可以按任何順序進行任意數量的此類操作。 例如,同一個查詢可以具有基於cts.query進行過濾的where()操作,然后具有基於列的布爾表達式進行過濾的where()操作。

換句話說,Optic生成器沒有人為限制SQL語法,而是直接公開關系操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM