Bir maksimum değeri (sıra) seçmek için JPQL (2.0) 'da bir sorgu oluşturmam gerekiyor.Boş bir tablo için "SELECT max (rank) FROM testinin" null sonucu nasıl önlenir?
kullandığım: Bu tablo boş olduğu durumda haricinde gayet iyi çalışıyor SELECT max(rank) FROM test
, sonuç null
, ama 0
lazım. (Çerçeve sadece JPA Sorgu ama hiçbir java kodunu belirlemenizi sağlar) Ben "yakalamak" if-ifadesi bir basit ile boş başardı eğer
Bu
hiçbir sorun olacağını ama bunu yapamaz.Tablo boşsa,yerine null
almak için bu sorgunun nasıl ayarlanacağı konusunda bir fikriniz var mı? - Veritabanı bir MySQL'dir ve yerel sorgular veya saklı yordamlar seçenek değildir. Belki
@Frosty Z: neden silindi? – zerkms
Nedeni doğal bir sorgu (JPQL'in COALESCE'e böyle bir şekilde izin vermediğini varsayalım) –
Yerel sorgulama yok, saklı proc yok, basit bir yapamazsınız (eğer ret == null) ret = 0; tür şey. Merak ediyorum, neden tüm kısıtlamalar? Ellerinizi arkanızdan kasıtlı olarak bağladığınız gibi geliyor. Bir geçici çözüm için – pap