【发布时间】:2012-02-26 22:29:25
【问题描述】:
请帮助我在 MySQL 中对表进行排序。我只需要制作一次,而不是用于脚本或其他动态的地方。
这是我的表格“页面”:
| ... | title | ... | parent_id | ... | position | ... |
我需要使用规则更新表:选择具有相同parent_id 的所有行,按title DESC 对它们进行排序并设置第一行position = 0,第二个= 1 等。然后为所有@ 循环987654325@.
我进行了查询以显示我需要的内容,但没有更新,仅针对一个 parent_id。但是由于有数千个parent_id,这个查询需要一个循环。选择后,position 必须更新为与当前行的@number 相同的值。
SET @number = -1;
SELECT @number:=@number+1 AS number, p.* FROM `page` AS p WHERE parent_id=1
ORDER BY title DESC;
感谢您的帮助!
【问题讨论】:
标签: mysql sorting select loops