Bir DynamoDB tablosu, her ikisi de Number türünde olan OrderID'yi (partition key) ve NumberOfItemsPurchased'ı (sort key) kullanır. Sorgu sonuçları şu anda NumberOfItemsPurchased'a göre artan sırada döndürülmektedir. Geliştirici, sorgu sonuçlarının NumberOfItemsPurchased'a göre azalan sırada sıralanmasını istiyor. Bu nasıl başarılabilir?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: Query işlemi parametresi ScanIndexForward'ı false olarak ayarlayın..
Neden bu cevap
Doğru cevap, Query işlemi parametresi ScanIndexForward'ı false olarak ayarlamaktır. DynamoDB'de, bir Query işlemi varsayılan olarak sıralama anahtarına (sort key) göre artan sırada sonuçları döndürür. ScanIndexForward parametresi false olarak ayarlandığında, sonuçlar sıralama anahtarına göre azalan sırada döndürülür. Bu, mevcut tablo şemasını değiştirmeden veya yeni bir indeks oluşturmadan sıralama düzenini tersine çevirmenin en verimli yoludur. Diğer seçenekler neden yanlış: NumberOfItemsPurchased'ı sort key olarak kullanarak bir local secondary index (LSI) oluşturun: LSI'lar, farklı bir sıralama anahtarı veya farklı bir projeksiyon ile sorgulama yeteneği sağlar, ancak mevcut sıralama anahtarının sıralama düzenini tersine çevirmek için doğrudan kullanılmazlar. Zaten NumberOfItemsPurchased sort key olarak tanımlandığı için bu bir çözüm değildir. Sort key'i NumberOfItemsPurchased'dan NumberOfItemsPurchasedDescending olarak yeniden adlandırın: DynamoDB'de bir sort key'in adını değiştirmek, tablonun yeniden oluşturulmasını gerektirecek büyük bir şema değişikliğidir ve sıralama düzenini doğrudan etkilemez. Query işlemi parametresi KeyConditionExpression'ı false olarak ayarlayın: KeyConditionExpression, sorgulanacak öğeleri filtrelemek için kullanılan bir ifadedir, sıralama düzenini kontrol etmez.
Sonsuz cevap arayışı olmadan sınavınızı geçin
Bu sınav için her doğrulanmış soruyu ve açıklamayı tek bir yerde edinin ve saatlerce süren hazırlıktan tasarruf edin. 1.000'den fazla sertifika · 20'den fazla dil · ücretsiz başlayın.
Sınavınızı daha hızlı geçin → Kart gerekmez