Mysql - 查询GroupBy没有返回正确的时间

时间:2017-06-25 14:50:22

标签: php mysql datetime

我在下面的sql查询中遇到了很大的问题,基本上我想按日期“Y-m-d”对表进行分组,找到该组的最小值并返回它发生的时间。

然而,它保持返回时间= 00:00:00,我不知道有什么问题。任何帮助将受到高度赞赏。

例如:对于第一个结果,它正确计算了该组的最低价格,但时间是04:00:00,但它仍然返回00:00:00

根据返回的ID,它似乎返回该组第一个元素的日期 - 而不是最低价格的实际日期。

/**
 * Fetch a list of up to 10 file names and IDs.
 * @return List of Strings describing files, or an empty list if no files
 *         found.
 * @throws IOException
 */
private List<String> getDataFromApi() throws IOException {
    // Get a list of up to 10 files.
    List<String> fileInfo = new ArrayList<String>();
    FileList result = mService.files().list()
         .setPageSize(10)
         .setFields("nextPageToken, files(id, name)")
         .execute();
    List<File> files = result.getFiles();
    if (files != null) {
        for (File file : files) {
            fileInfo.add(String.format("%s (%s)\n",
                    file.getName(), file.getId()));
        }
    }
    return fileInfo;
}

表:

sql

结果:

Select val_date 
     , id
     , MIN(average_price) AS min_value 
  from tableY
 GROUP 
    BY Month(val_date) 
     , Year(val_date) 
     , Day(val_date);

尝试:

[{"val_date":"2017-01-01 00:00:00","id":1,"min_value":964.33},
{"val_date":"2017-01-02 00:00:00","id":25,"min_value":998.24},
{"val_date":"2017-01-03 00:00:00","id":49,"min_value":1016.4},
{"val_date":"2017-01-04 00:00:00","id":73,"min_value":1034.02}

所有结果仍然返回00:00:00

1 个答案:

答案 0 :(得分:0)

如果您需要按日期的最小值(val_date)的行值,您可以在subselect中使用

  select val_date, id, average_price as min_value, 
  from tableY
  where ( val_date, average_price) in (
     select 
            date(val_date) 
          , MIN(average_price) 
      from tableY 
      group by date(val_date) 
  ) 

或使用加入

select a.val_date, a.id, a.average_price as min_value, 
from tableY a
inner join (
      select 
            date(val_date)   as date_val_date
          , MIN(average_price)  min_price
      from tableY 
      group by date(val_date) 
) t on date(a.val_date ) = t.date_val_date and a.average_price = t.min_price
相关问题