Я искал решение этой проблемы, некоторые из них близки, но не могут найти решение. У меня есть таблица «прогонов» с различной информацией, один столбец - информация о компании, к которой она относится. У меня также есть таблица компаний, которые хранят всю информацию о компании. В столбце компании таблицы прогонов компания идентифицируется «индексатором» из таблицы компаний.mysql подзапрос с несколькими ошибками результатов
Теперь у меня есть поиск, где вы можете найти любую информацию о прогоне, чтобы найти любое количество записей, содержащих поисковую фразу, включая компанию. Как столбец компании таблицы запуска имеет только номер идентификатора, т.е. 34, 23, 5 и т. Д. Мне нужно также проверить совпадения в столбце имен таблицы компании.
Это мой запрос, который отлично работает, если только одна компания соответствует результатам поиска. Мне нужно вернуть все совпадения этой компании.
$sql_results = "SELECT * FROM runs WHERE name LIKE '%$searchname%' OR company = (SELECT indexer FROM companies WHERE name LIKE '%$searchname%') OR feild LIKE '%$searchname%' ORDER BY date_due";
while($result_results = @mysql_fetch_array($query_results))
{
$resultnm_array[]=$result_results['name'];
$cmp_id = $result_results['company'];
$sql2 = "SELECT name FROM companies WHERE indexer = '$cmp_id' LIMIT 1";
$query2 = @mysql_query($sql2);
$result2 = @mysql_fetch_array($query2);
$resultcpy_array[]=$result2['name'];
$resultfld_array[]=$result_results['feild'];
$resultdt_array[]=$result_results['date_due'];
$resultid_array[]=$result_results['indexer'];
}
Я ввод результатов в массив и используя механизм шаблонов TBS для создания таблицы результатов и т.д. Я немного новичка, так что любая помощь будет оценен. Из того, что я собираюсь, мне нужно использовать соединение. Но я не могу показаться, чтобы заставить его работать ...
Вы должны прочитать о нормализации таблиц, но принять смотреть Функция MySQL FIND_IN_SET –