के बीच रेल क्वेरी मेरे पास एक रेल ऐप है जिसमें Checkin
मॉडल है। मैं उन सभी रिकॉर्ड्स को ढूंढना चाहता हूं जो वर्तमान दिन के लिए एक विशिष्ट समय सीमा के भीतर हैं। 12PM और 4:30 अपराह्न के बीच बनाए गए सभी रिकॉर्ड प्राप्त करने के लिए मैं where
कैसे लिखूं?दो बार
दो बार
उत्तर
@ x1a4 का उत्तर आपके लिए अच्छा होना चाहिए लेकिन आप इसे एक श्रेणी का उपयोग करके अधिक पढ़ने योग्य और छोटे तरीके से कर सकते हैं।
Chekin.where(created_at: Time.parse("12pm")..Time.parse("4:30pm"))
यह की तरह कुछ उत्पन्न करनी चाहिए:
SELECT "checkins".*
FROM "checkins"
WHERE ("checkins"."created_at" BETWEEN '2012-05-28 12:00:00.000000' AND '2012-05-28 16:30:00.000000')
आप किसी भी अन्य तरीके से एक समय बनाने के लिए साथ Time.parse("12pm")
बदल सकते हैं।
यह लग रहा है कि यह काम करेगा की तरह, UTC समय क्षेत्र मानते हुए:
Record.where('created_at > ? AND created_at < ?', Date.today + 12.hours, Date.today + 16.5.hours)
या एक BETWEEN
साथ:
Record.where('created_at BETWEEN ? AND ?', Date.today + 12.hours, Date.today + 16.5.hours)
BETWEEN
या नहीं रेंज में दूसरा मान शामिल हो सकते हैं कर सकते हैं। Postgres includes it।
आप तिथियों के बीच रिकॉर्ड को खोजने के लिए मणि नीचे इस्तेमाल कर सकते हैं,
काफी का उपयोग करने के लिए आसान और अधिक स्पष्ट [स्टार तक] यह gem [1]। मैं इस मणि का उपयोग कर रहा हूं और एपीआई अधिक स्पष्ट है और दस्तावेज़ीकरण भी अच्छी तरह से समझाया गया है।
Post.between_times(
Time.zone.now - 3.hours, # all posts in last 3 hours
Time.zone.now
)
यहाँ आप हमारे क्षेत्र गुजारें सकता भी Post.by_month("January", field: :updated_at)
कृपया दस्तावेज़ देखें और यह प्रयास करें।
- 1. दो बार
- 2. दो बार
- 3. दो बार
- 4. वक्तव्य() मुद्रण दो बार
- 5. दो कारक बार साजिश
- 6. धारा दो बार पढ़ना?
- 7. UIGestureRecognizer दो बार फायरिंग?
- 8. कॉलिंग popViewController दो बार
- 9. log4j दो बार लॉगिंग
- 10. दो बार क्लिक करने
- 11. keyboardWillShow दो बार
- 12. डब्ल्यूसीएफ विधि दो बार
- 13. क्यों दो बार
- 14. ऑब्जेक्टिंग दो बार ऑब्जेक्ट
- 15. समस्या CIN दो बार
- 16. एंड्रॉइड अधिसूचना दो बार
- 17. MySQL: पंक्तियों को दो बार बार-बार कैसे प्राप्त करें
- 18. मेनविंडो कन्स्ट्रक्टर को दो बार
- 19. एक्सप्रेस अनुरोध को दो बार
- 20. HtmlGenericControl ("br") दो बार प्रतिपादन
- 21. दो बार रेंडरसेक्शन कॉल करें ...?
- 22. अपवाद दो बार पकड़ा है
- 23. खोज विजेट कॉल दो बार
- 24. क्लिक श्रोता पर दो बार
- 25. स्प्रिंग सिंगलटन को दो बार
- 26. UITableView didSelectRowAtIndexPath को दो बार
- 27. घटाना अजगर में दो बार
- 28. UITableView प्रतिनिधि विधि दो बार
- 29. एक्सएमएल समान टैग दो बार
- 30. LINQ ग्रुपिंग डेटा दो बार
आप किस डेटाबेस का उपयोग कर रहे हैं? दिन का समय प्राप्त करने के लिए कार्य अलग-अलग होंगे। यदि आप समय के साथ दिन के घंटे/मिनट को स्टोर करेंगे तो यह सबसे आसान होगा। –
मैं postgresql का उपयोग कर रहा हूँ। मैं मानक 'बनाया_at' टाइमस्टैम्प कॉलम का उपयोग कर रहा हूं जो रेल प्रदान करता है –