如何使用JPQL寫純SQL語句
阿新 • • 發佈:2018-01-27
nag sql查詢 bsp div ring esc des 數據 一個
使用JPQL,需要把SQL語句修改成類似HQL 語句。SQL 查詢的是數據庫,而JPQL 查詢的是對象和屬性,在語法上是有些不同的。對於有些用JPQL 無法寫出來的查詢,還是使用原生SQL寫出來方便
以下給出一個例子,註意語法的區別:
JPQL查詢
@PersistenceContext
protected EntityManager em;
public List<Video> findVideoList1() {
String hql = "from Video order by id desc";
Query query = em.createQuery (hql);
List<Video> result = query.getResultList();
em.clear();
return result;
}
SQL查詢
查詢最近7天的數據
public List<Video> findVideoList2() {
List<Video> result = (List<Video>) em.createNativeQuery
("select * from db_video where date_sub(curdate(), interval 6 day) <= date(date) order by date desc ", Video.class)
.getResultList();
return result;
}
原創文章,歡迎轉載,轉載請註明出處!
如何使用JPQL寫純SQL語句