Агрегатная функция count () объединяет все строки в одну.
Выполните group by
, чтобы увидеть количество по ip-адресу.
SELECT s.*, COUNT(ssh_logs.id) AS ssh_count FROM servers s
LEFT JOIN logs ssh_logs ON s.ip_address = ssh_logs.server_ip
GROUP BY s.ip_address
Это будет работать лучше всего, если серверы.ip_address является уникальным полем для серверов (первичный ключ или уникальный индекс).
Если на серверах есть дубликаты ip_addresses, тогда этот запрос группирует эти ip_addresses и скрывает данные, которые должны быть скрыты.
Однако, учитывая тот факт, что это серверы, логично предположить, что ip_address уникален.