我的Snowflake数据库中有一个表。我想从列中获取数据。
数据示例:
id tid categories
------------------------------------------------------------------------------
v-123 t-123 ["tx-b5mmqcpooa0p","tx-b5mmqcpood0p"]
b-123 t-124 ["tx-b5mmfcpooa0p","tx-b4mmqcpood0p"]
x-123 t-125 []
b-123 t-124 ["tx-b5mmfcpooa0p","tx-b4mmqcpood0p","tx-bmqcpood0p"]
我尝试使用熊猫:
sql = SELECT id, tid, categories FROM table
df = pandas.read.sql(con, sql)
我得到这个结果:
id tid categories
---------------------------------------------------------------------------
"v-123" "t-123" " ["tx-b5mmqcpooa0p","tx-b5mmqcpood0p"] "
"b-123" "t-124" " ["tx-b5mmfcpooa0p","tx-b4mmqcpood0p"] "
"x-123" "t-125" " [] "
"b-123" "t-124" " ["tx-b5mmfcpooa0p","tx-b4mmqcpood0p","tx-bmqcpood0p"] "
“类别”的类型是字符串,而不是数组(列表)。
我在做什么错了?
谢谢!
答案 0 :(得分:2)
雪花文档https://docs.snowflake.net/manuals/user-guide/sqlalchemy.html#variant-array-and-object-support建议使用json.loads
转换为数组。