PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

przekazanie parametru Date do utworzenia zapytania o zakres dat

Użyj HttpServletRequest#getParameter() do zbierania parametrów żądania. Zakładając, że pole wejściowe ma nazwę date .

String dateString = request.getParameter("date");

Użyj SimpleDateFormat#parse() przekonwertować go na java.util.Date przy użyciu określonego wzoru, w zależności od tego, w jaki sposób użytkownik końcowy został poproszony o wprowadzenie daty.

Date date = null;

try {
    date = new SimpleDateFormat("yyyy-MM-dd").parse(dateString);
}
catch (ParseException e) {
    // Show error message to enduser about the wrong format and forward back to the JSP with the form.
    request.setAttribute("error", "Invalid format, please enter yyyy-MM-dd");
    request.getRequestDispatcher("search.jsp").forward(request, response);
    return;
}

Przekaż to jako argument metody do swojej metody DAO:

List<ParseBean> results = parseDAO.search(date);

Musisz przekonwertować go na java.sql.Date , aby można było użyć PreparedStatement#setDate() aby ustawić go w zapytaniu SQL:

String query = "SELECT * FROM dateparse WHERE date = ?";
// ...
statement.setDate(1, new java.sql.Date(date.getTime()));

Możesz użyć WHERE date > ? aby wyszukać rekordy nowsze niż podana data, lub WHERE date < ? aby wyszukać rekordy starsze niż podana data, lub WHERE date BETWEEN ? and ? aby wyszukać rekordy między określonymi datami.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Masowa wstawka z csv w postgresie przy użyciu golanga bez użycia pętli for

  2. Jak podzielić String i wstawić go jako nową linię w tej samej tabeli?

  3. pg_ctl Wskazówki i porady

  4. Uzyskaj krótką nazwę dnia w PostgreSQL

  5. Jak wybrać wiersze, w których kombinacja 2 kolumn jest taka sama?