我有一个表(在RethinkDB数据库中),该表具有一堆带有字段VIN0
的文档。该字段几乎总是按预期存储数字。
我最近在某些数据损坏的地方,在字段VIN0
的某些字符串代替数字。我用来处理此数据的查询现在返回错误:"e: Expected type NUMBER but found STRING in:"
我想过滤字符串,但似乎找不到它们。是否可以使用Number.isInteger()
之类的方法在RethinkDB中过滤掉这些项目?
谢谢!
最佳答案
您可以使用typeOf
查找字段或元素的类型。假设您要使用VIN0是数字来过滤文档
r.db('db').table('table').filter(r.row('VIN0').typeOf().eq('NUMBER'))
您也可以尝试使用
coereTo
将字符串转换为数字来纠正问题。r.db('db').table('table')
.filter(r.row('VIN0').typeOf().eq('STRING'))
.update({VIN0: r.row('VIN0').coerceTo('NUMBER')})
希望这可以帮助。
关于javascript - 如何过滤掉非数值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32278032/