【问题标题】:SOCRATA SODA LIKE QueriesSOCRATA SODA LIKE 查询
【发布时间】:2014-08-10 18:42:11
【问题描述】:

如何在 Socrata SODA API 中请求 LIKE 查询?

例如,我将所有 Socrata 数据和 ETL(提取、转换和加载)到 BigQuery

例如,以

开头

https://data.cityofnewyork.us/Housing-Development/DOB-Permit-Issuance/ipu4-2q9a

转换完成后,上传到 BigQuery,或者 mysql 或者任何 sql 数据库中

https://bigquery.cloud.google.com/table/personal-real-estate:nyc.dob_permit_issuance (需要谷歌登录,我相信,但基本上是免费或几乎免费查询)

在 BigQuery 或任何 sql 数据库中,我可以发出 LIKE 查询等。

问题是如何通过 SODA API 运行 LIKE 查询。

如何将时间戳字段转换为仅用于 group by 查询的 YEAR。例如,如果记录的日期列是时间戳,并且我想查看按年份分组的许可数量,我该如何通过 SODA API 执行此操作?

【问题讨论】:

    标签: socrata soda


    【解决方案1】:

    “点赞”功能现在似乎可以通过 API 工作,只要您使用新版本的 API(大约在 2015 年 9 月发布)。

    例如,geneorama 在他的回答中的示例现在可以使用更新后的 API:https://data.cityofchicago.org/resource/xqx5-8hwx.json?$where=legal_name%20like%20%27%25INC%25%27(请注意,标识符 9j92-xfdk 已更新为xqxf-8hwx)。

    与新 API 类似,您可以按年份对记录进行日期截断,在您的示例中如下所示:https://data.cityofnewyork.us/resource/83x8-shf7.json?$select=date_trunc_y%28issuance_date%29%20as%20year,count%28issuance_date%29&$group =year(有点奇怪的是,生成的年份类别没有显示截断,但它显示了 2013 年、2014 年等的计数)。您会再次注意到,资源标识符已从问题中的那个更改为使用新的 API 标识符(83x8-shf7 而不是 ipu4-2q9a)。

    【讨论】:

      【解决方案2】:

      很遗憾,您目前无法通过 SoQL 执行 LIKE 查询。但是,一旦我们推出一些我们正在处理的后端更改,我们期待能够提供更多数据集。

      此时日期截断也是如此:-\

      【讨论】:

      • 这还是不行吗?我一直在试验它,但我在 curl 中得到了“无法识别的参数”。
      【解决方案3】:

      根据文档,现在支持 LIKE,但是我无法在我的示例中使用它。 http://dev.socrata.com/docs/functions/like.html

      它应该允许您将 LIKE 与 $where 一起用于文本列。有两个通配符_%分别表示“匹配任意单个字符”和“匹配任意字符”。

      记录的示例有效: https://open.whitehouse.gov/resource/9j92-xfdk.json?$where=position_title like '%25ASSISTANT%25'

      但我无法让它在示例之外工作,例如: https://data.cityofchicago.org/resource/r5kz-chrr.json?$where=legal_name like '%25INC%25'

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多