我已在数据块中创建了一个表
create table TabA (latitude float, longitude float, col1 string,col2 string)
utils.executequery( """ update TabA set col1 = ST_Envelope(col2)""" ) I tried converting this output as string but getting error as _tostring() not supported
utils.executequery(""" optimize TabA """)
utils.executequery( """ update TabA set latitude = col1.Lat""" )
utils.executequery(""" optimize TabA """)
utils.executequery( """ update TabA set longitude= col1.Long""" )
utils.executequery(""" optimize TabA """)
我收到错误
col1#22613:需要结构类型,但得到字符串
我试着将“col1”转换为字符串,但是我无法解决这个异常。我该如何解决它?
1条答案
按热度按时间thigvfpy1#
您错误一定是来自
col1.Lat
和col1.Long
由于col1
是字符串,因此不能使用点.
表示法'如col1.Lat
',因为此表示法适用于 struct 数据类型,而不是 string请考虑以下示例:
下面的SQL查询有效,因为我寻址了 struct type列,并成功地提取了字段
lon
:但是下面的SQL查询失败了,因为我试图对 string tyoe列执行同样的操作。
分析异常:无法从string_col#617中提取值:需要struct类型,但得到的是字符串;线路1位置7