rethinkDB eq(0)返回值是不是内置的布尔类型?

问题描述:

任何人都可以帮助我吗? 为什么行['TimeInBucket1']。eq(0)的返回值不是True或False?我rethinkDB eq(0)返回值是不是内置的布尔类型?

这里是您使用Python的if/else,这是在客户端上评估了蟒蛇

def map1(row): 
    flgTB1 = row['TimeInBucket1'].eq(0) 

    return {'nMX1Pop': 0 if flgTB1 else 1 , 
      'meanMX1Pop':0.0 if flgTB1 else row['MX1'], 
      'varMX1Pop': 0.0 if flgTB1 else row['MX1']*row['MX1'] 
      } 

cursor = r.db(dbName).table(tableName).map(map1).run(connection) 
+0

什么是回报值? –

的代码。您需要使用r.branch在服务器上执行此操作(因此r.branch(flgTB1, 0, 1)而不是0 if flgTB1 else 1)。

+0

谢谢,它的工作原理。但是,查询约束覆盖语言语法是可耻的。 –