Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Zend paginator dbselect count #4590

wants to merge 2 commits into


None yet
2 participants

Fixes row count issue when you use GROUP with original query.


ralphschindler commented Jun 5, 2013

For changes like this, I really need to be able to test the approach on multiple databases. Can you create a generic schema with generic data that shows the usage of group and what you think the expected output should be? It would really assist me in the testing of this across multiple platforms.

@ralphschindler I will get that to you soon

SQL Script http://pastebin.com/NhHLxTnd

MySQL Query: http://pastebin.com/rm2amQd6

Expected output(ie pull request): 10
Actual output(ie current issue): 13

Please let me know if there is more I can do.

@ghost ghost assigned ralphschindler Jun 11, 2013


ralphschindler commented Jun 12, 2013

I'm working on this, but at current, it doesn't seem like COUNT(DISTINCT expr) is portable in the sense that expr can be multiple columns (like in Postgresql). The answer might lie in subselects though.


ralphschindler commented Jun 12, 2013

For example, this seems more portable (with your use case tables):

SELECT COUNT(1) as "the_count" FROM (
    SELECT DISTINCT u.id, p.id
    FROM transaction_line tl
    INNER JOIN transactions t ON tl.transaction_id = t.id
    INNER JOIN users u ON t.user_id = u.id
    INNER JOIN products p ON tl.product_id = p.id
) as c

ralphschindler commented Jun 12, 2013

Could you have a look at the solution in #4641 and let me know if it works for you?

Yes, #4641 works! Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment