Я действительно не могу получить картину того, как я должен продолжить получать следующую информацию из MySQL.
Я нажимаю на клиента. И на новой странице я получаю основную информацию о клиенте, и план также состоит в том, чтобы получить обзор принтеров, прикрепленных к клиенту.
У меня есть база данных, куда принтеры сообщают свою информацию, один раз в день.
я хочу показать каждую машину только один раз (по S / N), с самой новой информацией, такой как счетчик, тонер и т. д.
S/N Model Counter Current Cyan Current Magenta Current Yellow Current Black
NB64534 HP Color Laserjet 2600 65.473 45% 32% 87% 33%
NB54730 HP Color Laserjet 2530 876.645 20% 10% 33% 99%
Приведенный выше код является всего лишь вымышленным, но они так, как я хотел бы иметь возможность представить машины для каждого клиента.
Прошло много времени с тех пор, как я последний раз работал с php и mysql, поэтому я не совсем в курсе кода.
На данный момент у меня нет ничего похожего на то, что я хочу, только базовая строка Mysql. $stmt = $pdo->query('SELECT * FROM maskine WHERE K_ID = 1 ORDER BY date DESC');
Итак, исходя из нашего комментария, конечный результат (при условии, что serial_number — ваш столбец S / N, и вы хотите сделать заказ на creation_date)
SELECT * FROM maskine WHERE K_ID = 1 GROUP BY serial_number ORDER BY creation_date DESC
// Редактировать
Сортировка по дате создания
Игнорируйте мой предыдущий запрос, GROUP BY и ORDER BY в одном запросе не работают должным образом.
Это должно сделать это, внутренний запрос выбирает все запросы, где K_ID = 1 и порядок по дате создания. Внешний запрос сгруппирует результаты по S / N.
SELECT result.*
FROM (SELECT *
FROM maskine
WHERE K_ID = 1
ORDER BY creation_date DESC) result
GROUP BY result.serial_number;
Других решений пока нет …