catfan / Medoo

The lightweight PHP database framework to accelerate the development.
https://medoo.in
MIT License
4.83k stars 1.15k forks source link

Incorrect Limit Select #639

Closed sanishan closed 3 years ago

sanishan commented 6 years ago

Hi! My Medoo Code is this:

$select_site=$database->select('site_bookmark', array('[><]sites'=>array('site_bookmark.site_id'=>'id')),array('thumb_site','domain','score','meta_info'),array('user_id'=>$user_id,'complete'=>1,'LIMIT'=>array($page_sql[0],$page_sql[1]),'GROUP'=>'sites.domain','ORDER'=>array('site_bookmark.id'=>'DESC')));

Output Query: SELECT "thumb_site","domain","score","meta_info" FROM "site_bookmark" INNER JOIN "sites" ON "site_bookmark"."site_id" = "sites"."id" WHERE "user_id" = '11' AND "complete" = 1 GROUP BY "sites"."domain" ORDER BY "site_bookmark"."id" DESC LIMIT 4 OFFSET 0

This should be:

SELECT "thumb_site","domain","score","meta_info" FROM "site_bookmark" INNER JOIN "sites" ON "site_bookmark"."site_id" = "sites"."id" WHERE "user_id" = '11' AND "complete" = 1 GROUP BY "sites"."domain" ORDER BY "site_bookmark"."id" DESC LIMIT 0,4

Check the end of the query (Limit 0,4) but code generates (LIMIT 4 OFFSET 0)..

What am I doing wrong?

philwu commented 6 years ago

what datatype are you using? MySQL?PostgreSQL?

catfan commented 6 years ago

So, Is there any problem with LIMIT x OFFSET n? MySQL is supported with this.