added GROUP BY example
Will Hawes [Fri, 20 Jan 2006 15:00:42 +0000 (15:00 +0000)]
lib/DBIx/Class/Manual/Cookbook.pod

index 40da3c7..9bdce36 100644 (file)
@@ -159,6 +159,25 @@ any of your aliases using either of these:
         }
     );
 
+=head2 Grouping results
+
+DBIx::Class supports GROUP BY as follows:
+
+    $rs = $schema->resultset('Artist')->search(
+        {},
+        {
+            join => [qw/ cds /],
+            select => [ 'name', { count => 'cds.cdid' } ],
+            as => [qw/ name cd_count /],
+            group_by => [qw/ name /]
+        }
+    );
+
+    # e.g.
+    # SELECT name, COUNT( cds.cdid ) FROM artist me
+    # LEFT JOIN cd cds ON ( cds.artist = me.artistid )
+    # GROUP BY name
+
 =head2 Using joins and prefetch
 
 You can use the "join" attribute to allow searching on, or sorting your