重複の可能性:
MySQL を使用した SQL クエリ
Java で Jersey を使用して REST Web サービス (JAX-RS) を実装しています。休止状態を使用して、MySQL データベースからデータをフェッチします。このクエリでは:
(Select distinct deliverable.id from Task as t where t.project.id= :id And t.user.username = :name order by t.id desc")
.setMaxResults(3)
.setLong("id", projectId)
.setString("name", username)
.list();
[275,51,286] という正しい結果が得られました。これは、データベース内のすべての ID に提供されるキーです。
id key
---------------------
275 2.0
51 cm
286 19.87
今、私はこのクエリを使用します(deliverable.idの代わりにdeliverable.keyを除いてすべて同じです):
(Select distinct deliverable.key from Task as t where t.project.id= :id And t.user.username = :name order by t.id desc")
.setMaxResults(3)
.setLong("id", projectId)
.setString("name", username)
.list();
結果は ["2.0","19.88","19.99"] です。1つ目は正しいですが、2つ目と3つ目は全く別のキーです。
「エイリアス」またはその他の方法で解決できる場合があります。あなたの提案?