7 use DBIC::SqlMakerTest;
11 my $schema = DBICTest->init_schema();
13 my $multicol_rs = $schema->resultset('Artist')->search({ artistid => \'1' }, { columns => [qw/name rank/] });
19 columns => [ 'cdid' ],
27 '+select' => \ 'DISTINCT(foo, bar)',
28 '+as' => [qw/foo bar/],
34 => [qw/cdid title foo bar/],
37 '+select' => [ 'genreid', $multicol_rs->as_query ],
38 '+as' => [qw/genreid name rank/],
44 (SELECT me.name, me.rank FROM artist me WHERE ( artistid 1 ))
46 => [qw/cdid title foo bar genreid name rank/],
49 '+select' => { count => 'me.cdid', -as => 'cnt' }, # lack of 'as' infers from '-as'
50 '+columns' => { len => { length => 'me.title' } },
55 COUNT( me.cdid ) AS cnt,
58 (SELECT me.name, me.rank FROM artist me WHERE ( artistid 1 ))
60 => [qw/cdid title len cnt foo bar genreid name rank/],
63 '+select' => \'unaliased randomness',
68 COUNT( me.cdid ) AS cnt,
71 (SELECT me.name, me.rank FROM artist me WHERE ( artistid 1 )),
74 => [qw/cdid title len cnt foo bar genreid name rank/],
78 my $rs = $schema->resultset('CD');
82 my $attrs = shift @chain;
83 my $sql = shift @chain;
84 my $as = shift @chain;
86 $rs = $rs->search ({}, $attrs);
92 "Test $testno of SELECT assembly ok",
96 $rs->_resolved_attrs->{as},
98 'Correct dbic-side aliasing',