Indexes
インデックス クラスは、 MongoDBインデックスキー タイプ の静的ファクトリー メソッドを提供します。各メソッドは 型のインスタンスを返します。これはBson
createIndex()
メソッドでも使用できます。
次のコードに示すように、 Indexes
クラスのメソッドを静的にインポートできます。
import org.mongodb.scala.model.Indexes._
このガイドの例では、この静的インポートを前提としています。
上昇
昇順のインデックスキーを指定するには、 ascending()
メソッドのいずれかを使用します。
次の例では、 quantity
フィールドに昇順のインデックス キーを指定しています。
ascending("quantity")
次の例では、昇順でソートされたquantity
フィールドと昇順でソートされたtotalAmount
フィールドで構成される複合インデックス キーを指定します。
ascending("quantity", "totalAmount")
下降
降順のインデックスキーを指定するには、 descending()
メソッドのいずれかを使用します。
次の例では、 quantity
フィールドに降順のインデックス キーを指定しています。
descending("quantity")
次の例では、降順でソートされたquantity
フィールドと降順でソートされたtotalAmount
フィールドで構成される複合インデックス キーを指定します。
descending("quantity", "totalAmount")
複合インデックス
複合インデックスを指定するには、 compoundIndex()
メソッドを使用します。
次の例では、昇順でソートされたquantity
フィールド、その後に昇順でソートされたtotalAmount
フィールド、その後に降順でソートされたorderDate
フィールドを含む複合インデックス キーを指定しています。
compoundIndex(ascending("quantity", "totalAmount"), descending("orderDate"))
Text Index
テキスト インデックス キーを指定するには、 text()
メソッドを使用します。
次の例えでは、 description
フィールドのテキスト インデックス キーを指定します。
text("description")
ハッシュされたインデックス
ハッシュされたインデックスキーを指定するには、 hashed()
メソッドを使用します。
次の例えでは、 timestamp
フィールドの ハッシュされたインデックス キー を指定します。
hashed("timestamp")
地理空間インデックス
MongoDB でサポートされているさまざまな地理空間インデックスのインデックス キーを作成するためのヘルパーがあります。
2dsphere
2 dsphere インデックスキーを指定するには、 geo2dsphere()
メソッドのいずれかを使用します。
次の例えでは、 location
フィールドに2dsphere
インデックスを指定します。
geo2dsphere("location")
2d
2d
インデックスキーを指定するには、 geo2d()
メソッドを使用します。
重要
2d
インデックスは 2 次元平面上の点として保存されたデータ用であり、MongoDB Server バージョン2.2以前で使用されている legacy coordinate pairs を対象としています。
次の例えでは、 points
フィールドに2d
インデックスを指定します。
geo2d("points")