我该如何order by
冲刺?
例如,我在下面有这些数据,
page_id url
1 - a
2 - b
3 --- c
4 --- d
5 - e
6 - f
7 -- g
8 -- h
我追求的结果,
page_id url
1 - a
2 - b
5 - e
6 - f
7 -- g
8 -- h
3 --- c
4 --- d
如果我这样做,
ORDER by x.url ASC
这个我还是明白的
page_id url
1 - a
2 - b
3 --- c
4 --- d
5 - e
6 - f
7 -- g
8 -- h
有任何想法吗?
编辑:
我的实际 SQL,
SELECT
*,
IF(grandparentURL REGEXP '^[a-z0-9\-]+$', CONCAT('--- ', url), IF(parentURL REGEXP '^[a-z0-9\-]+$', CONCAT('-- ', url), CONCAT('- ', url))) AS url
FROM
(
SELECT
p.page_id,
p.url,
p2.url AS parentURL,
p3.url AS grandparentURL
FROM page AS p
LEFT JOIN page AS p2
ON p.parent_id = p2.page_id AND p.page_id != p2.page_id
LEFT JOIN page AS p3
ON p2.parent_id = p3.page_id AND p2.page_id != p3.page_id
WHERE IF('5' REGEXP '^[0-9]+$', p.page_id != '5', p.page_id IS NOT NULL)
AND p.url != 'cms'
) x
ORDER by x.url ASC