我有一个表,该表具有一个指向ID列相同表的外键。
pages
=====
id integer primary key autoincrement
name text
parent integer
FOREIGN KEY(parent) REFERENCES pages(id)
当我执行选择查询时,是否可以通过子记录的数量对结果进行排序?
最佳答案
您可以将其与子记录上的汇总查询结合起来,并根据以下内容进行排序:
SELECT p.*
FROM pages p
JOIN (SELECT parent, COUNT(*) AS cnt
FROM pages
GROUP BY parent) c ON p.id = c.parent
ORDER BY c.cnt