Do the filter before you do the join, not after.
var accounts = dao.fb_datasourceadaccount.AsQueryable();
if(dskId != -1)
accounts = accounts.Where(acc => acc.Fb_DataSourceKey == dskId);
var statData = from s in dao.fb_statdata
join acc in accounts
on s.Fb_DataSourceAdAccountId equals acc.Id
where s.ReportTypeId == 1
group new { s, acc.Fb_DataSourceKey }
by new { s.Fb_DataSourceAdAccountId, s.Start_time }
into res
select res;