Как просмотреть SQL запрос, возвращенные результаты и построить строку в формате csv - PullRequest
0 голосов
/ 30 марта 2020

У меня есть следующий метод в моем приложении Spring. В настоящее время он возвращает строку, которая состоит из даты (как видно) и количества повторений даты (как общее). Моя цель - создать строку в формате CSV следующего формата: «Date, Average Sightsings \ n», которую я позже опубликую в файл CSV.

public String getAverageSightingsPerDay() {
    return jdbcTemplate.queryForObject("SELECT DATE(sightedAt) AS sighted, COUNT(*)/2 AS total"
            + "FROM sightings GROUP BY DATE(sightedAt)", 
            String.class);

«Дата» останется «как есть» после извлечения из таблицы MySql, но AverageSightsings рассчитывается путем деления «итого», которое равно «сколько раз Дата повторяется в таблице» by getTotalTeams (), который является результатом, возвращаемым другим методом:

public int getTotalTeams() {
    return jdbcTemplate.queryForObject("SELECT COUNT(*) AS total FROM teams", Integer.class);
}

А вот команда, которая создала таблицу, из которой мы извлекаем значения:

 jdbcTemplate.execute("CREATE TABLE sightings(\r\n" + 
            "   serial INT,\r\n" + 
            "   serial_spotted INT,\r\n" + 
            "   spottedAt TIMESTAMP,\r\n" + 
            "   FOREIGN KEY (serial) REFERENCES teams(serial),\r\n" + 
            "   FEREIGN KEY (serial_spotted) REEFRENCES teams(serial)");

}
...