我正在使用Spark查询配置单元表。

frame = sqlContext.sql("select max(id) from testing.test123")

frame1=frame.map(lambda row: [str(c) for c in row]).collect()

lastval =''.join(frame1[0][0])


我正在得到lastval,这是我所期望的

现在使用lastval,我想查询另一个表,如下所示

abc = sqlcontext.sql("select * from testing.abc123 where id > {}". format(lastval))


当lastval是整数时,我没有错误。但是当lastval为None时,我将脚本视为失败。因为lastval应该是整数。

如何指定lastvalue是否为None,然后将lastval用作0

我尝试过belwo,但当我进行上次操作时,它仍然显示“无”

if lastval is 'None':
 lastval = 0

最佳答案

比较字符串时,请勿使用is。相反,您应该使用==

if lastval == 'None':
    lastval = 0


或者可能是您说lastval = '',在这种情况下,您要检查:

if not lastval:
    lastval = 0

关于python - python或pyspark中的条件语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43077896/

10-12 05:00