Il y a peu, j’ai eu l’occasion de m’occuper de l’optimisation d’une mĂ©thode qui chargeait plusieurs petits sets de donnĂ©es dans une table pour finalement renvoyer un seul paquet d’objets. Après avoir observĂ© le code quelques secondes je me dis que tout ça peut ĂŞtre fait directement dans la base de donnĂ©es Ă condition de lui fournir la requĂŞte voulue !
Après un petit moment d’effort, j’ai fini par rĂ©ussir mon coup Ă l’aide d’une fonctionnalitĂ© SQL qui m’avait toujours fait peur: le outer join !
Pour ceux qui ne sont pas Ă l’aise avec la syntaxe du code que j’utilise ici, je suis fan de la gem MetaWhere, et je ne sais plus vraiment Ă©crire de ActiveRecord pur
