【问题标题】:Sqlite order BY with multiple attribute具有多个属性的Sqlite order BY
【发布时间】:2017-07-30 15:17:10
【问题描述】:

如果我只使用以下任何一个,会有什么不同吗

select * from TABLE order BY CLM1

select * from TABLE order BY CLM1, CLM2

根据我的观察,它总是考虑 order BY 子句的第一列。

还是我在这里遗漏了任何概念?

更新:这对我的情况没有任何影响,可能是我仍然错过了一个关键点。请提出建议。

即使这样也有 id & age 列,它们几乎没有相似的值但没有区别。

【问题讨论】:

  • @CL 和 Varro 你们说的一样,这可能是真的。请检查我更新的答案我已经更新了我的观察结果。
  • 嗯,当然 - 正如我和 CL 的 cmets 所指出的,first 排序将按“id”进行。由于 id 字段是唯一的,因此无需对“年龄”列进行二次排序。
  • 因此,如果第一列具有唯一值,那么添加第二列不会有任何区别,您是在说这个吗?虽然我也会检查非唯一的列值。
  • 是的,如果第一列被约束保存唯一值,那么指定第二列进行排序是没有意义的。

标签: sqlite sql-order-by


【解决方案1】:

第二个示例将按 CLM1 firstthen 按 CLM2 排序,所以是的,它会有所不同。

【讨论】:

    【解决方案2】:

    只有当第一列中存在具有相同值的行时,第二列 ORDER BY 才会有所不同。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-14
      • 2015-07-21
      • 2014-06-11
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 2015-06-28
      • 2013-02-04
      相关资源
      最近更新 更多