【问题标题】:SQL Sum and If/Case statements in NSArrayNSArray 中的 SQL Sum 和 If/Case 语句
【发布时间】:2012-01-27 22:53:13
【问题描述】:

我目前对 SQL 数据库进行了多次调用以获取数据总和,但是数据已经在 NSArray 中,因此我宁愿对此进行计算。 我目前在 SQL 数据库上使用此查询:

 SELECT MAX(pk), pk, CASE WHEN result IS NULL THEN BFNeeded ELSE CFNeeded END AS Carry,
 CASE WHEN result IS NULL THEN 1 ELSE 0 END AS Settle FROM table1;

我有一个自定义对象,它有几个与 SQL 表相同的 NSString(pk、BFNeeded、CFNeeded 等),并且我在一个 NSArray 中有几个这样的对象。

如何对数组执行上述查询? 有没有办法像上面那样执行 SQL 查询,还是我需要采取完全不同的方法来做 CASE?

谢谢

【问题讨论】:

    标签: iphone objective-c ios xcode nsarray


    【解决方案1】:

    查看键值编码运算符,它可以适应您正在寻找的数组上的操作类型:

    http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/KeyValueCoding/Articles/CollectionOperators.html#

    您可能会寻求过滤或谓词您的数组,例如,您可以使用块迭代数组或获取满足特定条件或通过测试的对象子集,例如: NSArray *filteredArray = [myArray filteredArrayUsingPredicate:myPredicate];

    然后使用 KVC 运算符对结果集进行计算。

    【讨论】:

    • 没有任何手术可以提供帮助,但它确实让我找到了解决方案。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-01
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多