У меня есть PHP-скрипт, который ВЫБИРАЕТ ИЗ 7 таблиц, а client_id - это общий столбец И вернуть один тег со всеми клиентами, поскольку там client_id строка за строкой, теперь проблема заключается в том, что если в одной таблице есть две строки с двумя повторяющимися идентификаторами, это печатает повторяющиеся строки, например, 100 раз.
может быть, я неправильно делаю INNER JOIN или что-то в этом роде, если у кого-то есть идеи, как это предотвратить
$stmt = $pdo->query("SELECT * FROM client_form cf
INNER JOIN client_form_2 cf2 ON cf.client_id = cf2.client_id
INNER JOIN client_form_3 cf3 ON cf.client_id = cf3.client_id
INNER JOIN client_form_4 cf4 ON cf.client_id = cf4.client_id
INNER JOIN client_form_5 cf5 ON cf.client_id = cf5.client_id
INNER JOIN client_form_6 cf6 ON cf.client_id = cf6.client_id
INNER JOIN client_form_7 cf7 ON cf.client_id = cf7.client_id
");
Если, я полагаю, все данные имеют одинаковую структуру, то почему они разбиты на несколько таблиц?
^ это. Пожалуйста, не надо. Имейте одну главную таблицу, и если вам нужно каким-то образом идентифицировать клиентов, используйте столбец в таблице для идентификации, не используйте несколько таблиц для хранения данных одного типа.
Jonast92 это разные данные, каждая таблица содержит разное содержимое. Я не хочу создавать одну большую таблицу с 40 столбцами, так что я могу сделать, чтобы объединить все данные из 7 таблиц.






Как вам нужно справиться с этим? Следует ли сначала свернуть все повторяющиеся строки в каждой таблице в одну строку? GROUP BY сворачивает строки перед объединением.