'$date' ) LEFT JOIN surnames2ppl AS s2p ON ppl.ppl_id = s2p.ppl_id AND ( s2p.established = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = s2p.established ) <= '$date' ) AND ( s2p.disestablished = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = s2p.disestablished ) > '$date' ) LEFT JOIN phonenumbers2ppl AS p2p ON ppl.ppl_id = p2p.ppl_id AND ( p2p.established = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = p2p.established ) <= '$date' ) AND ( p2p.disestablished = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = p2p.disestablished ) > '$date' ) LEFT JOIN email2ppl AS e2p ON ppl.ppl_id = e2p.ppl_id AND ( e2p.established = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = e2p.established ) <= '$date' ) AND ( e2p.disestablished = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = e2p.disestablished ) > '$date' ) LEFT JOIN addresses2ppl AS a2p ON ppl.ppl_id = a2p.ppl_id AND ( a2p.established = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = a2p.established ) <= '$date' ) AND ( a2p.disestablished = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = a2p.disestablished ) > '$date' ) WHERE ( ( SELECT date FROM datenodes WHERE datenode_id = date_of_birth ) <= '$date' OR date_of_birth = 0 ) AND ( date_of_death = 0 OR ( SELECT date FROM datenodes WHERE datenode_id = date_of_death ) > '$date' ) ORDER BY f_priority DESC, a_priority DESC, s_priority DESC EOT; $query = <<') pid, firstname, CONCAT(' ', IF(prefix != '', CONCAT(prefix, ' '), ''), surname) prefix_surname, street, number, zipcode, city FROM ( $sub_query ) sub LEFT JOIN addresses USING (address_id) LEFT JOIN firstnames USING (firstname_id) LEFT JOIN surnames USING (surname_id) WHERE address_id IS NOT NULL GROUP BY ppl_id ORDER BY surname, firstname, prefix EOT; //LEFT JOIN email USING (email_id) //LEFT JOIN phonenumbers USING (phonenumber_id) //$outer_query = <<') aid, GROUP_CONCAT(naam SEPARATOR ', ') naam, street, number, zipcode, city FROM ( $outer_query ) sub1 GROUP BY address_id //EOT; $result = mysqli_query_safe($query); //header('Content-Type: text/html'); //echo(sprint_table($result)); //exit; html_head('Family, Friends & Vague Aquiantances DB', <<