मैं आज तक उपयोगकर्ताओं को फ़िल्टर करने की कोशिश कर रहा हूं, लेकिन जब तक मैं डीबी में उपयोगकर्ताओं की पहली और अंतिम तारीख नहीं ढूंढ पाता। जबकि मैं अपनी स्क्रिप्ट को बाद में डुप्लिकेट कर सकता हूं, मैं इसे Django के distinct
का उपयोग करके शुरुआत से ही करना चाहता हूं क्योंकि यह काफी कम हो जाता है। मैंDjango - टाइमस्टैम्प से अलग तिथियां प्राप्त करें
User.objects.values('install_time').distinct().order_by()
की कोशिश की लेकिन जब से install_time
एक timestamp
है, यह तारीख और समय (जो मैं वास्तव में परवाह नहीं है) भी शामिल है। नतीजतन, केवल फ़िल्टर करने वाले लोग ही तिथियां हैं जहां हम एकाधिक उपयोगकर्ताओं की इंस्टॉल तिथियां पुनर्प्राप्त कर सकते हैं लेकिन समय नहीं।
कोई विचार यह कैसे करना है? मैं Django 1.3.1, पोस्टग्रेस 9.0.5, और psycopg2 का नवीनतम संस्करण का उपयोग कर इसे चला रहा हूं।
संपादित करें: यहाँ, Postgres खोल से कुछ नमूना उत्पादन है जो मैं चाहता की एक त्वरित विवरण के साथ:
install_time = models.DateTimeField()
संपादित करें 2: मैं install_time
के डेटा प्रकार जोड़ने के लिए भूल गया
2011-09-19 00:00:00
2011-09-11 00:00:00
2011-09-11 00:00:00 <--filtered out by distinct() (same date and time)
2011-10-13 06:38:37.576
2011-10-13 00:00:00 <--NOT filtered out by distinct() (same date but different time)
मैं Manager.raw
के बारे में पता कर रहा हूँ, लेकिन यदि उपयोगकर्ता django.db.connection.cursor
012,354,852 के बाद से सीधे क्वेरी लिखने के लिए होगाRawQuerySet
देता है जो, आईएमओ, मैन्युअल रूप से SQL क्वेरी लिखने और पुनरावृत्त करने से भी बदतर है।
http://stackoverflow.com/questions/3388559/django-model-group-by-datetimes-date – thatwasbrilliant
@thatwasbrilliant यही था की संभावित डुप्लिकेट मैं को ढूंढ रहा था; धन्यवाद! इस तरह की अजीब बात यह है कि एसओ पर केवल 30 मिनट लग गए जब Google डब्ल्यू/नतीजे पर 2 घंटे लगे। – Edwin
आपको अपने Google कौशल पर काम करने की ज़रूरत है :) – thatwasbrilliant