Mysql查询 排序 分页
SELECT c.id,c.credits,c.companyName,c.companyId
FROM((
SELECT cr.id,(CASE WHEN cr.credits IS NULL THEN 0 ELSE cr.credits END) AS credits ,c.name AS companyName,c.id AS companyId
FROM companies c
LEFT JOIN g_credit_company cr ON cr.companyId = c.id WHERE c.name IS NOT NULL ) AS c)
WHERE 1=1 AND c.companyName LIKE '%的公司%' ORDER BY c.credits DESC LIMIT 0,7 ;
上面SQL是按照 c.credits降序排序,如果 有多条记录的 c.credits的值相同,并且相同 c.credits的值被分在不同的页中,会出现怎么样的结果?
以下是执行结果:
SELECT c.id,c.credits,c.companyName,c.companyId
FROM((
SELECT cr.id,(CASE WHEN cr.credits IS NULL THEN 0 ELSE cr.credits END) AS credits ,c.name AS companyName,c.id AS companyId
FROM companies c
LEFT JOIN g_credit_company cr ON cr.companyId = c.id WHERE c.name IS NOT NULL ) AS c)
WHERE 1=1 AND c.companyName LIKE '%豆豆的公司%' ORDER BY c.credits DESC
执行结果

SELECT c.id,c.credits,c.companyName,c.companyId
FROM((
SELECT cr.id,(CASE WHEN cr.credits IS NULL THEN 0 ELSE cr.credits END) AS credits ,c.name AS companyName,c.id AS companyId
FROM companies c
LEFT JOIN g_credit_company cr ON cr.companyId = c.id WHERE c.name IS NOT NULL ) AS c)
WHERE 1=1 AND c.companyName LIKE '%豆豆的公司%' ORDER BY c.credits DESC LIMIT 0,7
执行结果:

SELECT c.id,c.credits,c.companyName,c.companyId
FROM((
SELECT cr.id,(CASE WHEN cr.credits IS NULL THEN 0 ELSE cr.credits END) AS credits ,c.name AS companyName,c.id AS companyId
FROM companies c
LEFT JOIN g_credit_company cr ON cr.companyId = c.id WHERE c.name IS NOT NULL ) AS c)
WHERE 1=1 AND c.companyName LIKE '%豆豆的公司%' ORDER BY c.credits DESC LIMIT 7,7
执行结果:

...全文


