我有一张桌子
$config['uri_protocol'] = 'AUTO';
我试图通过DESC Date获取父节点的结果,但是尝试通过子节点的ASC SubID获得结果。 例如,我想
$db['default']['hostname'] = 'http://www.example.com';
这可能与Group By有关还是更复杂?
答案 0 :(得分:0)
这样做有几种可能性,这里有一个简单的例子:
select *
from t
order by
COALESCE(ParentId, MainId) DESC, SubID ASC
此查询假定较新的行将具有更高的MainId,因此不是按日期排序,而是按desc ord中的父ID排序
答案 1 :(得分:0)
一种不对日期和ID之间的相关性做出假设的方法,并且不会在2.10
2.2
之类的字符串进行排序
SELECT c.*
FROM Table1 c
LEFT JOIN Table1 p
ON c.SubID LIKE CAST(p.MainID AS VARCHAR(10)) + '._%'
ORDER BY isnull(p.Date, c.Date) DESC,
CAST('/' + c.SubID + '/' AS HIERARCHYID)