Twój SQL jest poprawny do tego, co chcesz zrobić. Slick prawdopodobnie generuje takie zapytanie:
SELECT device.*, COUNT(device.id)
-----------------------^
FROM device LEFT JOIN
unit
ON device.id = unit.device_id
GROUP BY device.id;
Może istnieje sposób, aby zliczyć device_id
, który jest jednoznacznie od unit
.