doctrine/orm · error · Doctrine\ORM\NonUniqueResultException

The query returned a row containing multiple columns. Change

Error message

The query returned a row containing multiple columns. Change the query or use a different result function like getScalarResult().

What it means

Error "The query returned a row containing multiple columns. Change the query or use a different result function like getScalarResult()." thrown in doctrine/orm.

Source

Thrown at src/Internal/Hydration/SingleScalarHydrator.php:35

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:35 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/1001e1b2cce5a52d. Report an issue: GitHub.