-1

When I am executing mysql query with limit 0,50 . I am getting 50 rows.

SELECT md.*,cl.country_name FROM master_detail md
INNER JOIN country_list cl on cl.country_value=md.Partner_value
where md.for_country_value='577' order by md.id LIMIT 0,50

But When I am executing mysql query with limit 50,100 . I am getting 100 rows.

SELECT md.*,cl.country_name FROM master_detail md
INNER JOIN country_list cl on cl.country_value=md.Partner_value
where md.for_country_value='577' order by md.id LIMIT 50,100

Actually I want data on the basis of limit? what will execute first where or limit or order by?

4

3 回答 3

3

LIMIT 中的第一个参数是它应该从哪里开始获取记录,第二个参数是多少。所以 50, 100 :从第 50 行开始,得到 100 条记录。

限制

于 2013-09-19T06:30:18.813 回答
1
limit 50,100  

可以改写为

limit 100 offset 50

表示在限制子句中第一个参数是偏移量,第二个是实际限制。

于 2013-09-19T06:32:51.763 回答
1

你没有做你所期望的。如果需要获取 50 条记录,则不应更改第二个参数。让它乘以 50。每次更改第一个参数。它告诉了起点。

SELECT 
    md.*,
    cl.country_name 
FROM master_detail md
INNER JOIN country_list cl 
    on cl.country_value=md.Partner_value
WHERE md.for_country_value='577' 
ORDER BY md.id LIMIT 50,50
于 2013-09-19T06:35:11.483 回答