Tôi muốn truy vấn YEAR (itemDate) nhưng chức năng không thoát, sau đó tôi thấy hàm SUBSTRING() vì vậy những gì tôi đã làm là Select q from table where SUBSTRING(itemDate, 1, 4)='2011'
và nó hoạt động cho tôi! hy vọng nó giúp!
nếu bạn cần biến động, bạn cũng có thể làm điều đó. ở đây: poDate là năm bị mất trong setParameter();
@NamedQuery(name = "PurchaseOrders.findByYear", query = "SELECT p FROM PurchaseOrders p WHERE SUBSTRING(p.poDate, 1, 4) = :poDate")
Query q = em.createNamedQuery("PurchaseOrders.findByYear");
q.setParameter("poDate", s_year+"");
nhưng nếu bạn đồng ý với giải pháp của mình, điều đó sẽ ổn thôi. tôi chỉ tìm JPA nhanh hơn để thực thi.
Xin chào James, Cảm ơn câu trả lời của bạn. Tôi thực sự đang sử dụng các yếu tố cần thiết. Tôi đã áp dụng cách như trên bu tôi vẫn nhận được: Mã thông báo không mong đợi - FUNC. Vui lòng trợ giúp! – venomrld
@venomrld Như James đã viết, công cụ FUNC này có sẵn EclipseLink 2.1+, xem [Bug 300512] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=300512). Vì vậy, tôi không mong đợi để tìm thấy nó trong TopLink Essentials. –
Vì vậy, tôi bị kẹt. Xin vui lòng giúp đỡ nếu một số cách tồn tại. Tôi đang sử dụng netbeans 6.5 và các khuôn mặt trực quan để phát triển. Dường như tôi đã thay đổi khá nhiều mã để di chuyển. – venomrld