N+1: один запрос за списком сущностей и N запросов за связями (например, заказы по каждому пользователю). Решение: один запрос с JOIN или два запроса - список id и один SELECT ... WHERE id IN (...). В Go собирают id, затем db.QueryContext(ctx, "SELECT ... WHERE user_id = ANY($1)", pq.Array(ids)) и мапят по user_id. ORM (GORM) решают через Preload.
users, _ := getUsers(ctx, db)
ids := userIDs(users)
orders, _ := getOrdersByUserIDs(ctx, db, ids)
byUser := groupOrdersByUserID(orders)