2017-04-11 26 views
0

我想从数据库中查询,我试图查找正确的方式来格式化SoQL字符串,但我失败了。我尝试以下方法:从苏打数据库查询使用Socrata client.get在Python

from __future__ import division, print_function 
from sodapy import Socrata 
import pandas as pd 
import numpy as np 


client = Socrata("data.cityofchicago.org", None) 

df = client.get("kkgn-a2j4", query="WHERE traffic > -1") 

并且收到一个错误消息说它Could not parse SoQL query "WHERE traffic > -1" at line 1 character 1。如果我这样做,但是,它的工作原理:

from __future__ import division, print_function 
from sodapy import Socrata 
import pandas as pd 
import numpy as np 


client = Socrata("data.cityofchicago.org", None) 

df = client.get("kkgn-a2j4", where="traffic > -1") 

但我想知道如何得到查询参数工作,所以我可以用更复杂的查询。具体来说,我想尝试查询traffic > -1BETWEEN '2013-01-19T23:50:32.000' AND '2014-12-14T23:50:32.000'

回答

1

可以使用sodapy where参数($where在SOQL)多个过滤器结合起来,只是用AND把它们混合起来:

traffic > -1 AND last_update BETWEEN '2013-01-19T23:50:32.000' AND '2014-12-14T23:50:32.000'

+0

只是出于好奇,你知道你将如何编写查询字符串获得相同的结果? – jtorca

+1

对不起,刚注意到这个!您可以将'$ query'写为:'SELECT * WHERE traffic> -1 AND last_update BETWEEN'2013-01-19T23:50:32.000'AND'2014-12-14T23:50:32.000'' – chrismetcalf