Dgraph 1.0.17 - Фильтрация по значению переменной - PullRequest
0 голосов
/ 07 февраля 2020

Я использую Dgraph 1.0.17. Я хочу фильтровать дочерние узлы на основе значения родительского поля. Кажется, что следующий запрос выполняет LIKE вместо EQUAL.

Посмотрел схему и поля swVersion и trackStandardSwVersion, где установлены TERM и FULLTEXT. Попытался изменить их на FULLTEXT и EXACT, но результаты те же.

{

  data_devices_1 as var(func:eq(node_type,"Device"))  @filter(eq(productFamily,"Firepower 696 Series Switches")) {
    deviceId
    deviceName
    myswVersion as swVersion
    productFamily        
  }

  final_results(func:uid(data_devices_1)) {
    deviceId
    deviceName
    swVersion

    ~rel_Track_MEMBER_OF_Device @filter(eq(trackStandardSwVersion, val(myswVersion))){
      trackName
      trackStandardSwVersion
    }
  }  

}

Вот результаты:

{
        "deviceId": "237908155",
        "deviceName": "device_12345",
        "swVersion": "19.2(33)ABI5",
        "~rel_Track_MEMBER_OF_Device": [
          {
            "trackName": "XYZ_12345_Sup720",
            "trackStandardSwVersion": "19.2(33)ABJ6"
          }
        ]
      },
      {
        "deviceId": "225703627",
        "deviceName": "device_23455",
        "swVersion": "19.2(33)ABI7",
        "~rel_Track_MEMBER_OF_Device": [
          {
            "trackName": "XYZ_12345_Sup720",
            "trackStandardSwVersion": "19.2(33)ABJ6"
          }
        ]
      },
...
...
...

Спасибо

...