如何查询mongodb中的对象数组

时间:2015-08-17 06:48:53

标签: mongodb mongodb-query

我有一个如下所示的对象结构

$(document).ready(function () {


    // Select all
    $('#selecctall').click(function (event) { //on click 
        if (this.checked) { // check select status
            $('.checkbox1').each(function () { //loop through each checkbox
                this.checked = true; //select all checkboxes with class "checkbox1"               
            });
        } else {
            $('.checkbox1').each(function () { //loop through each checkbox
                this.checked = false; //deselect all checkboxes with class "checkbox1"                       
            });
        }
    });

});

//Addition for checked value
$('input').click(function () {
    var sum = 0;
    $('input[type=checkbox]:checked').each(function () {
        sum += Number($(this).val());
    });
    console.log(sum);
    $("#sum").html(sum);
});

//popover
$(document).ready(function () {
    $('.pop').popover({
        content: "Other Expenses 200 <br> Other Expenses 200 <br>Other Expenses 200 <br> ",
        html: true,
        placement: "right",
        trigger: "focus"
    });
});

我需要总结(至少检索)&#34; generated_capacity&#34; &#34; wind_data&#34;中的所有对象有&#34; date&#34;等于&#34; 16-08-15&#34; &#34; TOTAL&#34;宾语。我试过这个查询

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<tr>
        <td align="center">2</td>
        <td align="center">2007 / 00006</td>
        <td align="center">Yousef</td>
        <td align="center">GR5 / A</td>
        <td align="right">0.000</td>
        <td align="right">1000.000
            <input type="checkbox" name="checkbox5" id="checkbox5" class="checkbox1" value="1000">
        </td>
        <td align="right">1000.000
            <input type="checkbox" name="checkbox8" id="checkbox8" class="checkbox1" value="1000">
        </td>
        <td align="right">1000.000
            <input type="checkbox" name="checkbox11" id="checkbox11" class="checkbox1" value="1000">
        </td>
        <td align="right"><strong> 3000.000</strong>

        </td>
    </tr>
    <tr>
        <td align="center">3</td>
        <td align="center">2012 / 00058</td>
        <td align="center">Ghalia</td>
        <td align="center">KG2 / C</td>
        <td align="right">0.000</td>
        <td align="right">0700.000
            <input type="checkbox" name="checkbox6" id="checkbox6" class="checkbox1" value="700">
        </td>
        <td align="right">0700.000
            <input type="checkbox" name="checkbox9" id="checkbox9" class="checkbox1" value="700">
        </td>
        <td align="right">0700.000
            <input type="checkbox" name="checkbox12" id="checkbox12" class="checkbox1" value="700">
        </td>
        <td align="right"><strong> 2100.000</strong>

        </td>
    </tr>
    <tr>
        <td align="center" class="hide-xs">&nbsp;</td>
        <td align="center" class="hide-xs">&nbsp;</td>
        <td align="center" class="hide-xs">&nbsp;</td>
        <td align="center" class="hide-xs">&nbsp;</td>
        <td align="right" class="hide-xs">&nbsp;</td>
        <td align="right" class="total"><strong>3100.000
                        <input type="checkbox" name="checkbox14" id="checkbox14" class="checkbox1" value="0">
                        </strong>

        </td>
        <td align="right" class="total"><strong>3100.000
                        <input type="checkbox" name="checkbox15" id="checkbox15" class="checkbox1" value="0">
                        </strong>

        </td>
        <td align="right" class="total"><strong>3100.000
                        <input type="checkbox" name="checkbox16" id="checkbox16" class="checkbox1" value="0">
                        </strong>

        </td>
        <td align="right" class="total"><strong> 9300.000
                        <input type="checkbox" name="checkbox13" id="selecctall"  value="0">
                        </strong>

        </td>
    </tr>

但是,此查询无效。请提出一些解决方法。

1 个答案:

答案 0 :(得分:0)

以下查询可以完成工作

    db.collectionName.aggregate([      
      {"$unwind":"$wind_data"},       
      {"$match":{"plant_name":"TOTAL","wind_data.date":"16-08-15"}},
      {"$group":{"_id":"$wind_data.date","generated_capacity_sum":{"$sum":"$wind_data.generated_capacity"}}}
    ])