2009-05-25 10 views
4

私はコンテンツを指すURLを持っており、そのうちの1つに含まれる最高の価値を得る必要があります。それを達成する集約関数はありますか、これを手動で行う必要はありますか?Android:カラムの中で最高の価値を得る

答えて

18

あなたはAndroidのコンテンツプロバイダを照会している場合は、ContentResolver.queryの選択パラメータにしてMAX(COLUMN_NAME)を渡すことによってこれを達成することができるはずです:

ウリは、コンテンツプロバイダのアドレスである
getContentResolver().query(uri, projection, "MAX(COLUMN_NAME)", null, sortOrder); 

。これは、COLUMN_NAMEの中で最も高い値を持つ単一の行を返します。

+3

'' MAX(COLUMN_NAME) "'は投影ではなく、選択範囲として使用してください。 –

+0

なぜsortOrderを設定する必要がありますか? – UmAnusorn

1

AndroidのデータベースはSQLiteを使用しているので、SELECT MAX(thecolumn) FROM TheTableは他のSQLiteの実装と同じように動作するはずです(他のSQLでは "ite"またはnot ;-)。 (android.databaseを使用していない場合は、代わりにを指定することをお勧めします.-))

+0

私はContentResolver.query(...)を使用しています。それは可能ですか?どのフィールドを使用するのですか? – Migol

関連する問題