I'd like back up Gary's concern on this.

A finder through association query on my server (using 0.9.11) does
not include the GROUP BY clause and takes less than half a second
while on my development machine (using 0.10.1) the same query takes
over 10 seconds.

Is it possible to remove the GROUP BY clause?

Thanks,
Jon

On Nov 3, 2:36 pm, Gary Yngve <gary.yn...@gmail.com> wrote:
> A Recruiter belongs to a Team.
>
> Suppose I do
>
> Recruiter.first(:team_id => 'foo')
>
> That generates a simple query:
> ~ (0.002456) SELECT `id`, `created_at`, `updated_at`, ... `team_id`
> FROM `recruiters` WHERE `team_id` = 'foo' ORDER BY `id` LIMIT 1
>
> Now suppose I do:
> Recruiter.first('team.id' => 'foo')
>
> That generates:
> ~ (0.008210) SELECT `recruiters`.`id`, `recruiters`.`created_at`,
> `recruiters`.`updated_at`, ... `recruiters`.`team_id` FROM
> `recruiters` INNER JOIN `teams` ON `recruiters`.`team_id` =
> `teams`.`id` WHERE `teams`.`id` = '554'GROUPBY `recruiters`.`id`,
> `recruiters`.`created_at`, `recruiters`.`updated_at`, ...
> `recruiters`.`team_id` ORDER BY `recruiters`.`id` LIMIT 1
>
> What I don't understand is why doesn't the second query just do:
>
> ~ (0.008210) SELECT `recruiters`.`id`, `recruiters`.`created_at`,
> `recruiters`.`updated_at`, ... `recruiters`.`team_id` FROM
> `recruiters` INNER JOIN `teams` ON `recruiters`.`team_id` =
> `teams`.`id` WHERE `teams`.`id` = '554' ORDER BY `recruiters`.`id`
> LIMIT 1
>
> ?
>
> For that matter, are there any underlying efficiency concerns in the
> DB regarding the superfluous group_by?
>
> Thanks,
> Gary

--

You received this message because you are subscribed to the Google Groups 
"DataMapper" group.
To post to this group, send email to datamap...@googlegroups.com.
To unsubscribe from this group, send email to 
datamapper+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/datamapper?hl=en.


Reply via email to