Wygląda na to, że Twoja metoda może być jedynym sposobem, aby to zrobić.
Powodem jest to, że NULL
jest prawidłową wartością do uwzględnienia w obiektach JSON. Większość funkcji agregacji ignoruje wartości null, więc prawidłowo ignorują niepasujące wiersze pochodzące z LEFT JOIN
, byłby to problem dla JSON_ARRAYAGG()
. Uniemożliwiłoby to dołączanie wartości null w innych sytuacjach. Nie ma sposobu na odróżnienie wyraźnych wartości null od LEFT JOIN
wartości null.