小编Man*_*ani的帖子

NEST:如何查询多个索引并处理不同的子类(文档类型)?

我正在使用ElasticSearch和我的C#项目中的NEST一起玩.我的用例包括几个具有不同文档类型的索引,到目前为止我分别查询.现在我想实现一个全局搜索功能,它可以查询所有现有索引,文档类型并正确评分结果.

所以我的问题是:如何通过使用NEST实现这一目标?

目前我正在使用该功能,SetDefaultIndex但如何定义多个索引?

也许为了更好地理解,这是我想用NEST实现的查询:

{
  "query": {
    "indices": {
      "indices": [
        "INDEX_A",
        "INDEX_B"
      ],
      "query": {
        "term": {
          "FIELD": "VALUE"
        }
      },
      "no_match_query": {
        "term": {
          "FIELD": "VALUE"
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

TIA

elasticsearch nest

16
推荐指数
1
解决办法
1万
查看次数

T-SQL:CTE别名的多次使用 - 不仅在外部查询中

当我在我的一个脚本中使用WITH子句时,我遇到了一个问题.这个问题很容易指出我想多次使用CTE别名,而不仅仅是在外部查询中,并且存在症结.

例如:

-- Define the CTE expression
WITH cte_test (domain1, domain2, [...])
AS
-- CTE query
(
    SELECT domain1, domain2, [...]
    FROM table
)
-- Outer query
SELECT * FROM cte_test
-- Now I wanna use the CTE expression another time
INSERT INTO sometable ([...]) SELECT [...] FROM cte_test
Run Code Online (Sandbox Code Playgroud)

最后一行将导致以下错误,因为它在外部查询之外:

消息208,级别16,状态1,行12无效的对象名称'cte_test'.

有没有办法多次使用CTE.让它持久?我目前的解决方案是创建一个临时表,我存储CTE的结果,并将此临时表用于任何进一步的语句.

-- CTE
[...]
-- Create a temp table after the CTE block
DECLARE  @tmp TABLE (domain1 DATATYPE, domain2 DATATYPE, [...])
INSERT INTO @tmp (domain1, domain2, [...]) SELECT domain1, …
Run Code Online (Sandbox Code Playgroud)

sql t-sql common-table-expression with-clause

6
推荐指数
2
解决办法
5749
查看次数

寻找最佳做法来过滤Completion Suggester的建议

我目前正在评估ElasticSearch中的Completion Suggester功能以实现自动完成功能.到目前为止看起来确实很不错.但是我在权限方面有点挣扎.

让我们假设我有一个像ElesticSearch网站上的例子那样的酒店索引.除了获得与给定短语匹配的酒店之外,我还想检查是否允许用户看到"建议".像酒店只适合某个客户的东西.我添加了一个用于保存组/权限的新字段,就像用于测试目的的简单字符串一样.我想要完成的是按群组过滤.

映射看起来像这样:

{
  "mappings": {
    "hotel" : {
      "properties" : {
        "name" : { "type" : "string" },
        "city" : { "type" : "string" },
        "group" : { "type" : "string" },
        "name_suggest" : {
          "type" : "completion",
          "payloads" : true
        }
      }
    }
  }
}'
Run Code Online (Sandbox Code Playgroud)

并提供以下文件:

{
  "name" :         "Mercure Hotel Munich",
  "city" :         "Munich",
  "group "   :     "1",
  "name_suggest" : "Mercure Hotel Munich"
}'

{
  "name" :         "Monaco Hotel",
  "city" :         "Munich",
  "group"    :     "2",
  "name_suggest" …
Run Code Online (Sandbox Code Playgroud)

elasticsearch

5
推荐指数
1
解决办法
2809
查看次数

Redux-i18n在React组件之外访问t()函数,例如在动作创建者中

我在我的React组件中使用Redux-i18n。按设计工作。现在,我在动作创建者文件中有几种业务逻辑作为单独的功能。这包括其他错误处理和有效性检查。显示其中一些,其他通过电子邮件发送。至此,我认识了用户/收件人,并希望以他们喜欢的语言向他们显示消息/邮件。我当然在后端使用模板,但是我想要添加和转换的应用程序具有某些属性。

因此,我想翻译动作创建者中的消息。有没有办法像使用t()功能的组件那样方便地访问翻译文字?

reactjs redux react-redux-i18n

2
推荐指数
1
解决办法
1129
查看次数