如何从 select 中按列号指定 order 子句,如下所示:
按 2 desc, 3,1 Desc 从表中选择 colA, colB , colC
假设您想使用 Linq :
table.OrderByDescending(x => x.ColB).ThenBy(x => x.ColC).ThenByDescending(x => x.ColA);
如果要使用列名以外的任何内容,则必须使用该OrderByRaw
方法。
检查此示例SqlKata 游乐场:OrderByRaw
或查看文档OrderByRaw 文档
var query = new Query("t1")
.Select("ColA", "ColB")
.OrderByRaw("1 desc, 2")
如果您将其翻译select
成 SQLKata Select
:
var cols = new[] { "colA", "colB", "colC" };
... Select(cols).OrderByDesc(cols[2-1]).OrderBy(cols[3-1]).OrderByDesc(cols[1-1]);