RQL'过滤器'没有结果时返回

时间:2015-10-02 02:42:46

标签: php rethinkdb

当您的过滤器找不到结果时,它会返回什么?它是否返回空值,空字符串,json文档描述没有找到结果的事实?如果我要运行r\table('users')->filter(array('user_name' => $user_name))->run($this->r)并且没有找到该名称的用户,Rethink会返回什么?

我似乎无法在扩展文档中找到过滤器或常规API文档。

1 个答案:

答案 0 :(得分:1)

它返回一个空选择。可以把它想象成一个空数组,或者一个空的可枚举的空集,取决于你的驱动程序和类型系统的语言。

  

我似乎无法在扩展文档中找到过滤器或常规API文档

您可以尝试使用数据浏览器(用于快速获取结果)和typeOf命令来自行获取此信息。

r.db("rewl")
    .table("issues")
  .filter( function (item) {
        return item('date').eq(r.now())
  })
  .typeOf()

打印出来:

"SELECTION<STREAM>"

您还应该在数据资源管理器中使用RAW VIEW,因为它显示原始数据,而不是说没有结果它显示空数组[]。这有助于学习ReQL。