SELECT r_id, ( TO_DAYS( LEAST( s_date_end, r_date_last ) ) - TO_DAYS( GREATEST( r_date_from, s_date_start ) ) + if( r_date_last > s_date_end, 1, 0 ) ) AS total_days, s_date_start, s_date_end, r_date_from, r_date_last FROM reservations INNER JOIN reservation_items ON ri_reservationsid = r_id INNER JOIN products ON ri_productsid = p_id INNER JOIN product_groups ON if( p_type = "house", p_house_public_productgroupsid, p_productgroupsid ) = pg_id INNER JOIN season_prices ON sp_productgroupsid = pg_id INNER JOIN seasons ON s_id = sp_seasonsid AND r_date_from <= s_date_end AND r_date_last >= s_date_start WHERE ( ri_parentid =0 OR ri_parentid IS NULL ) AND ri_id =1