小编Bou*_*egh的帖子

弹性搜索multi_match cross_fields前缀

我有一个multi_match类型的查询cross_fields,我希望通过前缀匹配来改进.

{
  "index": "companies",
  "size": 25,
  "from": 0,
  "body": {
    "_source": {
      "include": [
        "name",
        "address"
      ]
    },
    "query": {
      "filtered": {
        "query": {
          "multi_match": {
            "type": "cross_fields",
            "query": "Google",
            "operator": "and",
            "fields": [
              "name",
              "address"
            ]
          }
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

它完全匹配查询,如google mountain view.该filtered阵列是存在的,因为我需要动态地添加地理过滤器.

{
  "id": 1,
  "name": "Google",
  "address": "Mountain View"
} 
Run Code Online (Sandbox Code Playgroud)

现在我想允许前缀匹配,而不会破坏cross_fields.

这些查询应匹配:

  • goog
  • google mount
  • google mountain vi
  • mountain view goo

如果我更改multi_match.typephrase_prefix …

prefix elasticsearch

9
推荐指数
1
解决办法
1382
查看次数

Postgresql IN 与 ANY 运算符在子查询方面的性能差异

我有两个查询执行相同的操作。1

    SELECT *
    FROM "Products_product"
    WHERE ("Products_product"."id" IN
           (SELECT U0."product_id"
            FROM "Products_purchase" U0
            WHERE (U0."state" = 1
                   AND U0."user_id" = 5))
           AND "Products_product"."state" IN (1,
                                              6,
                                              3)
           AND UPPER("Products_product"."title" :: TEXT) LIKE UPPER('%toronto%'))
    ORDER BY "Products_product"."title_index" ASC
    LIMIT 10;
Run Code Online (Sandbox Code Playgroud)

2

SELECT *
FROM "Products_product"
WHERE ("Products_product"."id" = ANY (ARRAY(
       (SELECT U0."product_id"
        FROM "Products_purchase" U0
        WHERE (U0."state" = 1
               AND U0."user_id" = 5))))
       AND "Products_product"."state" IN (1,
                                          6,
                                          3)
       AND UPPER("Products_product"."title" :: TEXT) LIKE UPPER('%toronto%'))
ORDER BY "Products_product"."title_index" ASC
LIMIT 10; …
Run Code Online (Sandbox Code Playgroud)

arrays postgresql set query-planner

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

PlantUML 基本示例

我正在评估 PlantUML 是否可以成为 GraphViz 的良好替代品。

它被宣传为“直观”,但老实说,主页上的第一个示例已经令人困惑。

为什么下面会创建两次“Bob”和“Alice”?我在文本中看到 2 个节点,在输出中看到 4 个节点。此外,箭头不是在节点之间移动,而是在节点的重复项之间的关系之间移动。

Bob->Alice : hello
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这对我来说毫无意义。这个示例的含义是什么?如果是一个只有 2 个节点且它们之间有一个箭头的更简单的示例,会是什么?

plantuml

4
推荐指数
1
解决办法
3371
查看次数

FirstOrDefault 在整数列表上不返回 null

当我FirstOrDefault()在整数或布尔值的空列表上使用时,我得到0orfalse而不是null

我知道这是设计使然,因为它会返回default(T),但我如何强制它返回呢null

var emptyList = new List<int>();

emptyList.FirstOrDefault() == 0; // I want to receive null instead
Run Code Online (Sandbox Code Playgroud)

c# linq

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

标签 统计

arrays ×1

c# ×1

elasticsearch ×1

linq ×1

plantuml ×1

postgresql ×1

prefix ×1

query-planner ×1

set ×1