doctrine/orm · error · Doctrine\ORM\NonUniqueResultException
The query returned multiple rows. Change the query or use a
Error message
The query returned multiple rows. Change the query or use a different result function like getScalarResult().
What it means
Error "The query returned multiple rows. Change the query or use a different result function like getScalarResult()." thrown in doctrine/orm.
Source
Thrown at src/Internal/Hydration/SingleScalarHydrator.php:29
use function count;
use function key;
/**
* Hydrator that hydrates a single scalar value from the result set.
*/
class SingleScalarHydrator extends AbstractHydrator
{
protected function hydrateAllData(): mixed
{
$data = $this->statement()->fetchAllAssociative();
$numRows = count($data);
if ($numRows === 0) {
throw new NoResultException();
}
if ($numRows > 1) {
throw new NonUniqueResultException('The query returned multiple rows. Change the query or use a different result function like getScalarResult().');
}
$result = $this->gatherScalarRowData($data[key($data)]);
if (count($result) > 1) {
throw new NonUniqueResultException('The query returned a row containing multiple columns. Change the query or use a different result function like getScalarResult().');
}
return array_shift($result);
}
}
View on GitHub (pinned to d9b9ff7301)
When it happens
Trigger: Thrown at src/Internal/Hydration/SingleScalarHydrator.php:29 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of doctrine/orm@d9b9ff7301 (2026-08-21).
Data as JSON: /api/errors/fa87e210978e5992.
Report an issue: GitHub.