से मूल्यों का योग कैसे प्राप्त करें मेरे पास एक मॉडल 'पेन' है और इसमें ऐसी गुण हैं: "निर्माता नाम" और "गणना"। मैं सभी 'गणना' का योग कैसे प्राप्त कर सकता हूं? कोर डेटा मेरे लिए यह गिन सकता है? धन्यवाद ...आईफोन: कोर डेटा, डीबी
उत्तर
इस समस्या को हल करने के दो तरीके हैं:
पहले - NSSet या NSArray के लिए अपने डेटा मिलता है और @sum ऑपरेटर का उपयोग करें:
//assume that `pens` are NSArray of Pen
NSNumber *countSum=[pens valueForKeyPath:"@sum.count"];
दूसरा विशिष्ट उपयोग कर रहा है एक राशि के साथ जोड़ा NSExpressionDescription साथ for specific value लाने। इस तरह से कठिन है लेकिन बड़े डीबी के
हां, आप परिणामों को लाने और मूल्यांकन करने के बजाय, मूल डेटा से प्राप्त कर सकते हैं। आप NSExpression के उपयोग से कोर डेटा पर योग जैसे कार्यों को निष्पादित कर सकते हैं।
NSExpression *keyPathExpression = [NSExpression expressionForKeyPath:@"Count"];
NSExpression *sumOfCountExpression = [NSExpression expressionForFunction:@"sum:"
arguments:[NSArray arrayWithObject:keyPathExpression]];
कार्यों कि तुम यहाँ
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSExpression_Class/Reference/NSExpression.html जाना उपयोग कर सकते हैं की सूची के लिए
।
आपको फिर एक NSExpressionDescription ऑब्जेक्ट बनाने की आवश्यकता है जहां आपने अभिव्यक्ति सेट की है जो आपने अभी बनाया है sumOfCountExpression।
NSExpressionDescription *expressionDescription = [[NSExpressionDescription alloc] init];
[expressionDescription setName:@"sumOfCount"];
[expressionDescription setExpression:sumOfCountExpression];
[expressionDescription setExpressionResultType:NSDoubleAttributeType];
फिर अपने अनुरोधों का निर्माण करें जैसा कि आप आमतौर पर करेंगे और फिर संपत्ति को उस अभिव्यक्ति को लाने के लिए सेट करें।
[request setPropertiesToFetch:[NSArray arrayWithObject:expressionDescription]];
देखें: Core Data Programming Guide
यह ध्यान देने योग्य है कि आपको NSDictionaryResultType होने के लिए NSFetchRequest पर परिणाम टाइप करने की आवश्यकता है, और वापस दिया गया मान वापस 'sumOfCount' के अंतर्गत लौटाए गए शब्दकोश में होगा, या जो भी आपने सेटनाम में सेट किया है ऊपर। –
@ स्कॉटअलेन: धन्यवाद! वह दुर्घटनाग्रस्त हो रहा था और मुझे बोनकर्स चला रहा था, और यह जवाब यह कैसे करना है इसका दूसरा विवरण है मैंने देखा है कि इस छोटे से महत्वपूर्ण विवरण को छोड़ देता है! –
- 1. आईफोन कोर डेटा सिम्युलेटर
- 2. कोर डेटा प्रबंधित एसक्लाइट डीबी
- 3. कोर डेटा आईफोन ऐप
- 4. कोर-डेटा आईफोन: NSManagedObjectModel
- 5. कोर डेटा आधारित आईफोन एप्लिकेशन
- 6. आईफोन: बूलियन को कोर डेटा
- 7. आईफोन - कोर डेटा एनएसएससेट रिलेशनशिप
- 8. आईफोन कोर डेटा नई ऑब्जेक्ट्स डालने
- 9. पूर्वानुमान के साथ कोर डेटा पूछताछ - आईफोन
- 10. आईफोन कोर डेटा सीखने के स्रोत
- 11. आईफोन टैब बार नियंत्रक और कोर डेटा
- 12. आईफोन - मौजूदा परियोजना में कोर डेटा जोड़ें?
- 13. कोर डेटा
- 14. बर्कले डीबी कोर और बर्कले डीबी जेई
- 15. कोर डेटा
- 16. कोर डेटा
- 17. कोर डेटा
- 18. कोर डेटा
- 19. कोर डेटा
- 20. कोर डेटा
- 21. कोर डेटा
- 22. कोर डेटा
- 23. आईफोन एसक्यूएलएट डीबी
- 24. कोर डेटा
- 25. एक कोर डेटा SQLite डीबी कैसे VACUUM करने के लिए?
- 26. मैक/आईफोन ऐप - iCloud और उपकरणों (कोर डेटा का उपयोग करके) को कोर डेटा सिंक करना
- 27. कोर डेटा
- 28. कोर डेटा
- 29. कोर डेटा
- 30. कोर डेटा
बड़िया है, मैं पहले जिस तरह से पसंद नहीं है। और क्या होगा यदि पेन के पास एक और संपत्ति 'रंग' है और मैं लाल पेन की गिनती करना चाहता हूं? – Jim
बस एनएसपी्रेडिकेट का उपयोग करके लाल पेन के साथ सरणी बनाएं, और इस सरणी को जोड़ दें। –
बहुत बहुत धन्यवाद ... – Jim