Mysql
 sql >> база данни >  >> RDS >> Mysql

Изтриване на записи от преди повече от 1 година

За това са ви необходими 2 стъпки. На първо място имате нужда от метод, който ще приеме като параметър датата, на която искате да изтриете съобщенията и не се нуждаете от @Query анотация изобщо.

Така че във вашето хранилище трябва да имате нещо като

    @Modifying
    public void deleteByCreatedAtBefore(Date expiryDate);

Сега във вашия метод за обслужване ще изчислите датата и ще я предадете по този начин

    public void performTweetCleanup(){
       //calculate date
       Calendar cal = Calendar.getInstance();
       Date today = cal.getTime();
       cal.add(Calendar.YEAR, -1);
       Date previousYear = cal.getTime();

       //call the method
       MyTweeterRepository.deleteByCreatedAtBefore(previousYear);
     }


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да защитите MySQL/MariaDB сървъри

  2. Производителност на Mysql в таблица от 6 милиона реда

  3. mysql:виждате ли всички отворени връзки към дадена база данни?

  4. CakePHP използва множество бази данни за модели

  5. 2 полета за въвеждане на автоматично довършване/предложение с помощта на jQuery или Ajax с второ поле въз основа на първи избор с множество елементи