要按照每个记录引用同一张表上的另一个记录的顺序对SQL结果进行排序,您可以使用子查询和连接操作来实现。
以下是一个示例解决方案的代码示例:
SELECT t1.*
FROM your_table t1
JOIN (
SELECT referenced_id, ROW_NUMBER() OVER (ORDER BY referenced_id) AS row_num
FROM your_table
) t2 ON t1.id = t2.referenced_id
ORDER BY t2.row_num;
在上面的代码中,您首先创建一个子查询(t2),它选择被引用的记录的ID,并为每个记录分配一个行号(row_num),以引用ID的顺序进行排序。
然后,在主查询中,您连接表(your_table)本身,并根据子查询中的行号对结果进行排序。最后,您选择所有字段(t1.*)以获取最终的排序结果。
请注意,您需要将代码中的"your_table"替换为您实际使用的表名,并根据需要调整连接条件和字段选择。
希望这可以帮助到您!