# footer total using two columns

I am having trouble understanding how to use data from two columns together for the footer. The examples given use something like this:

``````                    total_WAN = api
.column(1)
.data()
.reduce(function (total, num) {
return intVal(total) + intVal(num);
}, 0);
``````

however, what I need to do is to sum (column(1)*column(2))

from what I see, the reduce function will only work with one column?

One way is to get the sum of the other column then add the two together for the footer.

Kevin

edited July 2020

no, i can't do that. one column is the count of users. the 2nd column is a 1 or a zero. The sum needs to be a sum of all the (count x 1) + (count x 0).

hope that makes sense. you can't just add the two and multiply or add them.

In that case I would use `filter()` to filter the rows where the 2nd column is 1 and chain `pluck()` to get the values in column 1 into an array using `toArray()`. You can then sum the array using `reduce()`. Here is an example that generates an array of Names that are in the `London` Office.
http://live.datatables.net/yewikige/1/edit

Kevin

yes, that worked perfectly!! Thank you

``````                    total_WAN = api
.column(1)
.data()
.reduce(function (total, num) {
return intVal(total) + intVal(num);
}, 0);

var total_LAN = api
.rows()
.data()
.filter(function (value, index) {
return value["FundOrgWAN_Count"]["UsesLAN"] == '1' ? true : false;
})
.pluck('FundOrgWAN_Count')
.pluck('WAN_Count')
.toArray()
.reduce(function (total, num) {
return intVal(total) + intVal(num);
}, 0);

var total_Internet = api
.rows()
.data()
.filter(function (value, index) {
//console.log("value", value, "index", index, "3", value["FundOrgWAN_Count"]["UsesInternet"]);
return value["FundOrgWAN_Count"]["UsesInternet"] == '1' ? true : false;
})
.pluck('FundOrgWAN_Count')
.pluck('WAN_Count')
.toArray()
.reduce(function (total, num) {
console.log("num", num);
return intVal(total) + intVal(num);
}, 0);

var totals = 'WAN Total: ' + total_WAN + '<br/>Total LAN: ' + total_LAN + '<br/>Total Internet: ' + total_Internet
``````