Her biri 1, 2, 3 veya -3105 (yukarıdakilerden hiçbiri için) gibi bir değere sahip olan bir dizi özelliğe veya yanıta sahip bir TraitQuestion modelim var. Harici bir API için gerekli olduklarından bu değerleri değiştiremiyorum.Rails SQL'e Göre Sipariş Ver
Ben değeriyle bunları sipariş etmek istiyorum, ama bunu yaparken, -3105 ile cevabım "Yukarıdakilerin hiçbiri" diyor rağmen üst katında görünür:
Answer 4 = -3105
Answer 1 = 1
Answer 2 = 2
Answer 3 = 3
Herhangi
@trait_question.traits.order('CASE WHEN value AS int > 0 then 1 ELSE 0 END')
: Bu
1
2
3
-3105?
Ben SQL için oldukça yeni ama ben böyle bir şey yapmak mümkün olmalıdır gibi görünüyor ki bu sipariş verebilir nasıl fikri
Fakat bu işe yaramıyor. Siparişi nasıl ayarlayabileceğime dair herhangi bir fikir, bunları doğru sırada sipariş edebilecek şekilde SQL'i çağırır mı?
DÜZENLEME: Bu Amazon AWS aracılığıyla Postgresql 9.4.1 olduğunu
bu şekilde '@ trait_question.traits.order ('VAKA deneyebilirsiniz ZAMAN değeri int AS> 0 sonra değeri BAŞKA değer * (- 1) END ') ' –