查询表格,仅匹配字段与“STRING”匹配的行

时间:2016-05-12 16:10:04

标签: rethinkdb

在原型制作过程中,我已将一堆Facebook帖子分批导入表中。在第一批之后,我进行了批量更新,将"created_date"列从字符串转换为本机时间戳(使用方便的r.ISO8601函数):

r.db('db').table('table').update({'created_date': r.ISO8601(r.row('created_date'))

在第二遍时,当我尝试重复此更新时,服务器会抛出错误,因为并非所有行字段都是STRING类型(即之前转换的那些),这就是ISO861预计。

我已经尝试过滤r.row('created_date').typeOf() == "STRING"但没有匹配。我找不到任何其他方式将STRING类型称为对象而不是文字字符串。

我知道我可以导出这些并在代码中执行if / else逻辑,但我很想知道是否有一个本机查询会过滤掉与某种类型匹配的行。

1 个答案:

答案 0 :(得分:2)

您必须使用eq进行比较,如下所示:

r.row('created_date').typeOf().eq("STRING")

使用==仅适用于某些语言支持运算符覆盖。