查询融合表并按日期进行过滤



我正在使用Fusion表V2 API发送查询,请使用Where语句按日期过滤,但是我无法设法找到正确的日期格式(文档无用(。

    var query = "SELECT 'amount', 'closedate' FROM ************ " + 
                "WHERE 'closedate' >= '01/01/2018' ";
    var access_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token;
    var dataSourceUrl = 'https://www.googleapis.com/fusiontables/v2/query?sql=' + encodeURIComponent(query) +
                        '&typed=true'+
                        '&access_token=' + encodeURIComponent(access_token);
    var jqxhr = $.get(dataSourceUrl, handleResponse, "json");

我总是得到这样的空响应:

{
 "kind": "fusiontables#sqlresponse",
 "columns": [
  "amount",
  "closedate"
 ]
}

如何设置日期格式进行正确的过滤?

在文档中找到了这一点:

DateTime上过滤

在类型DateTime上过滤时,该值应为 格式为以下支持格式之一:

  • mmm dd,yy
  • mm/dd/yy
  • mm-dd-yy
  • mmm-dd-yy
  • yyyy.mm.dd
  • dd-mmm-yy
  • mmm/yy
  • MMM YY
  • dd/mmm/yy
  • yyyy

看起来MM/DD/YYYY和DD/MM/YYYY不受支持的格式。但是,最接近您格式的是yyyy.mm.dd。您可以根据需要编写代码以在格式之间转换。一个简单的正则应当解决问题。

最新更新