ANY 函数 returns 当数据库为空时什么都没有

ANY function returns nothing when the database is empty

我有一个密码查询,它正在查看数据库中是否已存在具有特定电子邮件地址的帐户。为此,我使用内置的 ANY 函数:

MATCH (a:Account)
RETURN ANY(x IN a.email WHERE x='test@test.test') AS exists

由于这是一个开发数据库,​​因此当对数据结构进行重大更改导致数据库为空时,测试记录有时会被删除。我遇到的问题是上面显示的查询 return 既不是 true 也不是 false 而只是 return 当数据库为空时什么都没有。这是有问题的,因为这个查询是由使用 graph-aware 库的 php 脚本调用的,当我 运行 getRecord() 它 return 是一个错误,因为函数return什么都没写。

如果数据库为空,有没有办法使ANY函数returnfalse

1) 密码查询可以简化:

MATCH (a:Account) WHERE 'test@test.test' IN a.email
RETURN COUNT(a) > 0 AS exists

2) 使用驱动程序功能:

$result = $client->run('
  MATCH (a:Account) WHERE \'test@test.test\' IN a.email
  RETURN COUNT(a) > 0 AS exists
')

var_dump($result->size() && $result->getRecord())

// or      .

var_dump($result->firstRecordOrDefault(false))