Here is the code that ended up working for me:
<?php
$mypages = get_pages( array( 'child_of' => $post->ID, 'sort_column' => 'menu_order', 'sort_order' => 'asc' ) );
foreach( $mypages as $page ) {
$content = $page->post_content;
$content = apply_filters( 'the_content', $content );
$price = get_post_meta( $page->ID, 'price', true );
?>
<div class="service">
<h4><a href="https://wordpress.stackexchange.com/questions/126795/<?php echo get_page_link( $page->ID ); ?>"><?php echo $page->post_title; ?></a></h4>
<div class="price"><?php echo $price; ?></div>
<p><?php echo $content; ?></p>
<p><?php
$currentPageID = $page->ID;
$child_pages = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_parent =2526 AND post_type="page" ORDER BY menu_order", 'OBJECT');
if ( $child_pages ) : foreach ( $child_pages as $pageChild ) : setup_postdata( $pageChild );
$services = get_post_meta( $pageChild->ID, 'services', true );
if (preg_match('/(^|,| )'.$currentPageID.'($|,| )/', $services, $matches)){
echo "<a class="promotion-link" href="" . get_permalink("2526') . "'>A promotion is available for this service</a><br/>" ;
// echo "matches";
}
endforeach; endif;
?>