0
SELECT id,zipcode,state_id,district_city_id,city_id,country_id,longitude,latitude,region,post_office,(6371 * acos(cos(radians(?)) * cos(radians(Latitude)) * cos(radians(Longitude) - radians(?)) + sin(radians(?)) * sin(radians(Latitude)))) AS distance FROM zipcodeinfo group by city_id HAVING distance < ? order by distance asc
ここでは、現在の入力とテーブルのデータから派生した距離フィールドが必要です。 しかし、これは距離として過渡的な変数を作成したとしても、距離は存在しないということです。あなたが言うように、あなたが持つ句派生列が休止状態のエンティティに存在しません
HAVING distance < ?
と注文句
order by distance
しかし、距離の中で、あなたのクエリで距離を使用
"cos"、 "radians"、 "sin"などはJPQLの有効なキーワード/関数ではありません。 JPQL!= SQL。また、JPQLはクラス/フィールドに依存しており、エンティティクラスを投稿していません –