WP_Query about meta_key and its array value

Try this

$args = array(
    'post_type'   => 'book',
    'posts_per_page' => -1,
);

$query = new WP_Query($args);
while($query->have_posts() ) : $query->the_post();     
   $date = get_post_meta( get_the_ID(), 'date_all', true );
   if($date['year'] >= 2018 && $date['month'] == 3){
        the_title();
   }
endwhile; wp_reset_query();