सेटअप:
Django 1.1.2, MySQL 5.1कैसे Django क्वेरीसमूह थोक हटाना (अधिक कुशल बनाने के)
समस्या:
Blob.objects.filter(foo = foo) \
.filter(status = Blob.PLEASE_DELETE) \
.delete()
ORM में यह स्निपेट परिणाम पहले एक SELECT * from xxx_blob where ...
क्वेरी पैदा करने, फिर DELETE from xxx_blob where id in (BLAH);
कर रहे हैं जहां ब्लैड आईडी की हास्यास्पद रूप से लंबी सूची है। चूंकि मैं बड़ी मात्रा में ब्लॉब्स हटा रहा हूं, इससे मुझे और डीबी दोनों बहुत दुखी होते हैं।
क्या इसके लिए कोई कारण है? मुझे नहीं लगता कि ओआरएम उपरोक्त स्निपेट को एक ही डिलीट क्वेरी में क्यों परिवर्तित नहीं कर सकता है। कच्चे एसक्यूएल का उपयोग किए बिना इसे अनुकूलित करने का कोई तरीका है?
यह वास्तव में दुर्भाग्यपूर्ण है। मुझे टिकट पर इंगित करने के लिए धन्यवाद। – svintus
टिकट उस राशन को देता है जिसे आप चाहते थे। यह पूरी तरह से योग्यता के बिना नहीं है। –