Sorry. Got distracted and forgot to include table info.
Here is the create with a little test data.
And here is a simplified version of the query. (fewer fields. If I can make this work... I can add the additional columns)
select * from (
select `date`, sum(created) created, sum(offers) offers from
(
select DATE(from_unixtime(created)) `date`, 0 as created, 0 as offers from properties union all
select DATE(from_unixtime(created)) `date`, count(*) created, 0 as offers from properties union all
select DATE(from_unixtime(offer_date)) `date`, 0 as created, count(*) as offers from properties
)a
group by `date`
)b
CREATE TABLE IF NOT EXISTS `properties` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`created` int(11) NOT NULL DEFAULT '0',
`offer_date` int(11) NOT NULL DEFAULT '0',
`contract_date` int(11) NOT NULL DEFAULT '0',
`purchase_date` int(11) NOT NULL DEFAULT '0',
`sale_date` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;
INSERT INTO `properties` (`id`, `created`, `offer_date`, `contract_date`, `purchase_date`, `sale_date`) VALUES
(1, 1441065600, 1441152000, 1441238400, 1442016000, 1442534400),
(2, 1441152000, 1441152000, 1441324800, 1445817600, 1450137600),
(3, 1441238400, 1441324800, 1441324800, 1444953600, 1451433600),
(4, 1441324800, 1441324800, 1441324800, 1446768000, 1452816000),
(5, 1441411200, 1441411200, 1441411200, 1448928000, 1454284800);