También podrías utilizar
GROUP_CONCAT y luego hacer el reemplazo de la última "," por "y", algo así:
Código PHP:
Ver original$result = $db->query('SELECT GROUP_CONCAT(name) FROM users')
->fetch(PDO::FETCH_COLUMN);
if(false !== ($pos = strrpos($result, ','))){ }
echo $result . PHP_EOL;
Saludos.