1
请问任何人都可以帮我宽度这个查询? 我找不到解决方案。mysql优化查询寻呼
SELECT *,p.cat_id, cat_name FROM ( SELECT cat_id FROM categories ORDER BY cat_id LIMIT 700000, 10 ) o JOIN categories p ON p.cat_id = o.cat_id ORDER BY p.cat_id
这是与80万点的记录表非常快,但我需要的是将数据与ORDER BY子句和地方claue,排序太 - 分页。如果我使用ORDER BY这对非常缓慢或结果不正确排序>
SELECT *, p.cat_id, cat_name FROM(
SELECT cat_id
FROM categories
LIMIT 700000, 10
) o JOIN categories p
ON p.cat_id = o.cat_id
ORDER BY p.cat_name
page 1
LIMIT 700000,5:
id name
12525525 car
15155151 carpet
1521512i zone
page 2
LIMIT 700005,5
id name
12525525 carefull
15155151 excellent
52151222 drive
我需要的结果是:
page 1 car
carpet
drive
excellent ... etc.
f.e. , this is very slow ofcourse >
SELECT *, p.cat_id, cat_name
FROM (
SELECT cat_id
FROM categories
**ORDER BY cat_name**
LIMIT 700000, 10
) o
JOIN categories p
ON p.cat_id = o.cat_id
ORDER BY p.cat_name
主键CAT_ID,自动增量 我已经在字段的索引表
非常感谢您的帮助或一些想法
非常感谢您的回复,我不知道在哪里IAM做错误的,它不工作对我来说。 Iam试图写分页查询,这将是非常快的,包含1 000 000条记录在表中,包括条件和顺序通过排序...这等于结果.... select * from category where category_group ='parts'and category_id ='12452'order by category_name limit 800 000,20。但没有限制条款慢(f.e.limit 800 000,20)。我不知道如何实现快速排序。我在数据库上创建了索引,但对我来说仍然很慢。任何帮助或评论将对我有帮助 – petran