Solution
The excel table row connector passes the integers as strings, and it seems the easiest way to match them is to convert the zero to string, this worked for me:
and(equals(item()?['This period'], string(0)), equals(item()?['Last period'], string(0)))

So this is almost the same equation as I mentioned before, but we're removing the int() functions, and adding string() functions. Whatever works, right?
If you clicked on the 'Edit in advanced mode' it will look like this, and you can paste this in (I think - if not, play with the column names😞
@equals(and(equals(item()?['This period'], string(0)), equals(item()?['Last period'], string(0))), true)
Whoop!
Email Troubles
For your troubles getting the data out of the filter.
Test it without the email stage (just put a terminate action in to stop the flow) and once you can run it OK copy the body data from the filter, it should look a bit like this:
[
{
"@odata.etag": "",
"ItemInternalId": "a17af041-8bf0-428a-b2a2-58390f4d3b27",
"Email": "Bayan.sefri@gmail.com",
"KPI": "ML Production Volume",
"This Period": "0",
"Last Period": "0"
},
{
"@odata.etag": "",
"ItemInternalId": "64f2f9cf-3876-4256-924a-eb6863b04fa9",
"Email": "Osamaasefri22@gmail.com",
"KPI": "ML Dispatch Volume",
"This Period": "0",
"Last Period": "1"
}
]
Now create a Parse JSON action, click on the 'Generate from sample' button, and paste it in there, then click done.
Once you've done that, you should have a Parse JSON action that looks like this:

Now if you run your Apply to each on the Body from the Parse JSON action then you can more easily pick the field that you wish to use in the email action. 🙂

...
Alternate Solution
OK, here, to save some flow processing, I renamed the columns to have no spaces, so that I could do a single ODATA filter on the table (in case that it gets large😞
ThisPeriod eq '0'

That string expression is so that when it looks at the LastPeriod column it compares it to a string version of the zero value ... as this is how it is passed through in the JSON.
But if you want it without the ODATA and pure filtering:
[to be updated in a second]
The reason for taking the spaces out initially is that the excel ODATA filter cannot handle spaces. It also cannot handle 'and' or 'or', so only one query per excel ODATA apparently.