@lyrion

Как составить запрос для связных таблиц?

БД MySQL, структура следующая:
5c5c195f81638508717038.png
Необходимо найти наибольший Coord_station из bres_stations, принадлежащих определенному N_section из bres_section.
Как можно упростить код php или же соптимизировать запрос в БД?
У меня получилось только все последовательно сделать:
function getMaxStationCoord($connect,$section){	
	$sql = "SELECT N_pereg FROM bres_pereg WHERE N_section = '$section'";
	$result = mysqli_query($connect,$sql) or die (mysqli_error($connect));
	
	$aPereg = [];
	while($single = mysqli_fetch_assoc($result)) {
		array_push($aPereg,$single['N_pereg']);
	}
	
	$aCoords = []
	foreach($aPereg as $one){
		$sql = "SELECT Coord_station FROM bres_stations WHERE N_pereg = '$one'";
		$result = mysqli_query($connect,$sql) or die (mysqli_error($connect));
		
		while($single = mysqli_fetch_assoc($result)) {
			array_push($aCoords,intval($single['Coord_station']));
		}
	}
	
	return max($aCoords);
}
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы