Re: how to generate this sql

2012-06-19 Thread dogmatic69
Cake does not support HAVING but you can put it in the group as a string.

Something like the following:

$this-Timesheet-virtualFields = array(
'count_name' = 'COUNT(id)'
);
$this-Timesheet-find(
'all',
array(
'fields' = array(
'Timesheet.user_id',
'Timesheet.date',
'count_name'
),
'group' = 'Timesheet.user_id, Timesheet.date HAVING count_name  1',
'order' = array(
'count_name'
)
)
);

On Tuesday, 19 June 2012 03:18:58 UTC+1, elogic wrote:

 Hi All,

 How do I go about generating the following SQL line using cakePHP from the 
 timesheets controller?

 SELECT user_id, date, count(id) as count_name FROM `timesheets`GROUP BY 
 user_id, date HAVING count_name  1 ORDER BY count_name;

 Basically it is just checking for double up records mathching the date and 
 user_id fields.

 Thanks


-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php


Re: how to generate this sql

2012-06-19 Thread Adam Symonds
Thanks,

This is what I ended up doing in my records controller function but I get
the following error:* Column not found: 1054 Unknown column 'count_name' in
'having clause'


*

$this-Timesheet-virtualFields = array(
'count_name' = 'COUNT(Timesheet.id)'
);

$doubles = $this-Timesheet-find(
'all',
array(
'fields' = array(
'Timesheet.user_id',
'Timesheet.date',
'count_name'
),
'group' = 'Timesheet.user_id, 
Timesheet.date HAVING count_name  1',
'order' = array(
'count_name'
)
)
);
$this-set('doubles', $doubles);



-
Thanks
Adam




On Wed, Jun 20, 2012 at 1:16 AM, dogmatic69 dogmati...@gmail.com wrote:

 Cake does not support HAVING but you can put it in the group as a string.

 Something like the following:

 $this-Timesheet-virtualFields = array(
 'count_name' = 'COUNT(id)'
 );
 $this-Timesheet-find(
 'all',
 array(
 'fields' = array(
 'Timesheet.user_id',
 'Timesheet.date',
 'count_name'
 ),
 'group' = 'Timesheet.user_id, Timesheet.date HAVING count_name  1',
 'order' = array(
 'count_name'
 )
 )
 );

 On Tuesday, 19 June 2012 03:18:58 UTC+1, elogic wrote:

 Hi All,

 How do I go about generating the following SQL line using cakePHP from
 the timesheets controller?

 SELECT user_id, date, count(id) as count_name FROM `timesheets`GROUP BY
 user_id, date HAVING count_name  1 ORDER BY count_name;

 Basically it is just checking for double up records mathching the date
 and user_id fields.

 Thanks

  --
 Our newest site for the community: CakePHP Video Tutorials
 http://tv.cakephp.org
 Check out the new CakePHP Questions site http://ask.cakephp.org and help
 others with their CakePHP related questions.


 To unsubscribe from this group, send email to
 cake-php+unsubscr...@googlegroups.com For more options, visit this group
 at http://groups.google.com/group/cake-php


-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php


Re: how to generate this sql

2012-06-19 Thread dogmatic69
Sorry Cake creates the fields as Model__filed so it should be 'group' = 
'Timesheet.user_id, Timesheet.date HAVING Timesheet__count_name  1',

On Tuesday, 19 June 2012 23:52:43 UTC+1, elogic wrote:

 Thanks,

 This is what I ended up doing in my records controller function but I get 
 the following error:* Column not found: 1054 Unknown column 'count_name' 
 in 'having clause'


 *

   $this-Timesheet-virtualFields = array(
   'count_name' = 'COUNT(Timesheet.id)'
   );
   
   $doubles = $this-Timesheet-find(
   'all',
   array(

   'fields' = array(
   'Timesheet.user_id',
   'Timesheet.date',
   'count_name'
   ),
   'group' = 'Timesheet.user_id, 
 Timesheet.date HAVING count_name  1',

   'order' = array(
   'count_name'
   )
   )
   );
   $this-set('doubles', $doubles);



 -
 Thanks
 Adam




 On Wed, Jun 20, 2012 at 1:16 AM, dogmatic69 wrote:

 Cake does not support HAVING but you can put it in the group as a string.

 Something like the following:

 $this-Timesheet-virtualFields = array(
  'count_name' = 'COUNT(id)'
 );
 $this-Timesheet-find(
  'all',
 array(
 'fields' = array(
 'Timesheet.user_id',
  'Timesheet.date',
 'count_name'
 ),
  'group' = 'Timesheet.user_id, Timesheet.date HAVING count_name  1',
 'order' = array(
  'count_name'
 )
 )
 );

 On Tuesday, 19 June 2012 03:18:58 UTC+1, elogic wrote:

 Hi All,

 How do I go about generating the following SQL line using cakePHP from 
 the timesheets controller?

 SELECT user_id, date, count(id) as count_name FROM `timesheets`GROUP BY 
 user_id, date HAVING count_name  1 ORDER BY count_name;

 Basically it is just checking for double up records mathching the date 
 and user_id fields.

 Thanks

  -- 
 Our newest site for the community: CakePHP Video Tutorials 
 http://tv.cakephp.org 
 Check out the new CakePHP Questions site http://ask.cakephp.org and help 
 others with their CakePHP related questions.
  
  
 To unsubscribe from this group, send email to
 cake-php+unsubscr...@googlegroups.com For more options, visit this group 
 at http://groups.google.com/group/cake-php




-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php


Re: how to generate this sql

2012-06-19 Thread Adam Symonds
Thanks, worked perfectly.





On Wed, Jun 20, 2012 at 9:17 AM, dogmatic69 dogmati...@gmail.com wrote:

 Sorry Cake creates the fields as Model__filed so it should be 'group' =
 'Timesheet.user_id, Timesheet.date HAVING Timesheet__count_name  1',

 On Tuesday, 19 June 2012 23:52:43 UTC+1, elogic wrote:

 Thanks,

 This is what I ended up doing in my records controller function but I get
 the following error:* Column not found: 1054 Unknown column 'count_name'
 in 'having clause'


 *

  $this-Timesheet-**virtualFields = array(
  'count_name' = 'COUNT(Timesheet.id)'
  );
  
  $doubles = $this-Timesheet-find(
  'all',
  array(

  'fields' = array(
  'Timesheet.user_id',
  'Timesheet.date',
  'count_name'
  ),
  'group' = 'Timesheet.user_id, 
 Timesheet.date HAVING count_name  1',

  'order' = array(
  'count_name'
  )
  )
  );
  $this-set('doubles', $doubles);



 -
 Thanks
 Adam




 On Wed, Jun 20, 2012 at 1:16 AM, dogmatic69 wrote:

 Cake does not support HAVING but you can put it in the group as a string.

 Something like the following:

 $this-Timesheet-**virtualFields = array(
  'count_name' = 'COUNT(id)'
 );
 $this-Timesheet-find(
  'all',
 array(
 'fields' = array(
 'Timesheet.user_id',
  'Timesheet.date',
 'count_name'
 ),
  'group' = 'Timesheet.user_id, Timesheet.date HAVING count_name  1',
 'order' = array(
  'count_name'
 )
 )
 );

 On Tuesday, 19 June 2012 03:18:58 UTC+1, elogic wrote:

 Hi All,

 How do I go about generating the following SQL line using cakePHP from
 the timesheets controller?

 SELECT user_id, date, count(id) as count_name FROM `timesheets`GROUP BY
 user_id, date HAVING count_name  1 ORDER BY count_name;

 Basically it is just checking for double up records mathching the date
 and user_id fields.

 Thanks

  --
 Our newest site for the community: CakePHP Video Tutorials
 http://tv.cakephp.org
 Check out the new CakePHP Questions site http://ask.cakephp.org and
 help others with their CakePHP related questions.


 To unsubscribe from this group, send email to
 cake-php+unsubscribe@**googlegroups.comcake-php%2bunsubscr...@googlegroups.comFor
  more options, visit this group at
 http://groups.google.com/**group/cake-phphttp://groups.google.com/group/cake-php


  --
 Our newest site for the community: CakePHP Video Tutorials
 http://tv.cakephp.org
 Check out the new CakePHP Questions site http://ask.cakephp.org and help
 others with their CakePHP related questions.


 To unsubscribe from this group, send email to
 cake-php+unsubscr...@googlegroups.com For more options, visit this group
 at http://groups.google.com/group/cake-php


-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php


how to generate this sql

2012-06-18 Thread elogic
Hi All,

How do I go about generating the following SQL line using cakePHP from the 
timesheets controller?

SELECT user_id, date, count(id) as count_name FROM `timesheets`GROUP BY 
user_id, date HAVING count_name  1 ORDER BY count_name;

Basically it is just checking for double up records mathching the date and 
user_id fields.

Thanks

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php