DeviceUpDataEntityRepo.java 1.5 KB

1234567891011121314151617181920212223242526272829303132
  1. package com.huimv.environment.repo;
  2. import com.huimv.environment.entity.DeviceUpDataEntity;
  3. import org.springframework.data.jpa.repository.JpaRepository;
  4. import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
  5. import org.springframework.data.jpa.repository.Query;
  6. import java.util.Date;
  7. import java.util.List;
  8. public interface DeviceUpDataEntityRepo extends JpaRepository<DeviceUpDataEntity, Integer>, JpaSpecificationExecutor<DeviceUpDataEntity> {
  9. @Query(nativeQuery = true,value = "select * from device_up_data where device_id =?1 ORDER by id DESC limit 1")
  10. DeviceUpDataEntity findByDeviceId(String deviceId);
  11. // List<DeviceUpDataEntity> findAllByTimestampBetweenAndDeviceId(Date startTime, Date endTime, String deviceId);
  12. @Query(nativeQuery = true,value = "SELECT * FROM device_up_data WHERE DATE_FORMAT(timestamp ,'%Y-%m-%d')=DATE_FORMAT(?1,'%Y-%m-%d') and device_id = ?2")
  13. List<DeviceUpDataEntity> findAllByDeviceIdOrderByIdDesc(String today, String deviceId);
  14. @Query(nativeQuery = true,value = "SELECT * FROM (SELECT * FROM device_up_data WHERE data_temp_convert < ?1 OR data_temp_convert > ?2 ) a\n" +
  15. "WHERE DATE_FORMAT(TIMESTAMP,'%Y-%m-%d')=DATE_FORMAT(?3,'%Y-%m-%d') ")
  16. List<DeviceUpDataEntity> findAllByTimestampBetween(Double minTemp,Double maxTemp, String today );
  17. @Query(nativeQuery = true,value = "SELECT any_value(`timestamp`),device_id FROM `device_up_data` WHERE DATE_FORMAT(TIMESTAMP,'%Y-%m-%d')=DATE_FORMAT(?1,'%Y-%m-%d') GROUP BY device_id")
  18. List findAllByIdAfter(String today);
  19. }