当前位置: 首页 > 面试题库 >

“按行合并”是否可以自动保证“按行合并”?

颛孙哲
2023-03-14
问题内容

“ group by”子句是否可以自动保证结果将由该键排序?换句话说,编写以下内容是否足够:

select * 
from table
group by a, b, c

还是必须写

select * 
from table
group by a, b, c
order by a, b, c

我知道例如在MySQL中我不必这样做,但是我想知道我是否可以在SQL实现中依靠它。可以保证吗?


问题答案:

group by不必对数据进行排序。DB旨在尽可能快地获取数据,并且仅在必要时才进行排序。

因此,order by如果您需要有保证的订单,请添加。



 类似资料:
  • 问题内容: 我有两个要基于列合并的DataFrame。但是,由于其他拼写方式,空格数量不同,不存在变音符,只要它们彼此相似,我希望能够合并。 任何相似性算法都可以使用(soundex,Levenshtein,difflib)。 假设一个DataFrame具有以下数据: 然后我想得到结果DataFrame 问题答案: 类似建议,你可以申请的到df2的指标,然后应用: 如果这些是列,则可以按照相同的方

  • Many editors have similar action: it merges selected lines into a single one. But when there’s no selection, Emmet will match context HTML tag. 许多编辑器有类似功能:将选中的多行合并为单行。不过如果没有选择,Emmet 将匹配所在 HTML 标签。 <p>

  • 问题内容: 鉴于我有一个字符串列表。结果必须按照原始行的顺序排列。我想利用新的并行流。 以下代码是否 保证 结果的顺序与原始列表中的顺序相同? 问题答案: TL; DR 是的,订单得到保证。 Stream.collect()API文档 出发点是看什么决定减少是否同时发生。的描述如下: 如果该流是并行的,并且是并发的,或者该流是无序的或收集器是无序的,那么将执行并发缩减(请参阅有关并发缩减的详细信息

  • 我有几份产品数据表。每个文件都是一个单独的文件。我想做的是使用iText根据Web表单的答案生成一组摘要/建议的操作,然后将所有相关的数据表附加到这些操作中。这样,我只需要在浏览器中打开一个新选项卡来打印所有信息,而不是为摘要打开一个选项卡,为所需的每个数据表打开一个选项卡。 那么,使用iText可以做到这一点吗?

  • 我可以使用这个问题中的技巧来强制初始分区和最终分区之间的关系,但是Spark不知道每个原始分区的所有内容都将转移到一个特定的新分区。因此,它不能优化掉洗牌,而且它的运行速度比慢得多。

  • 问题内容: 用JavaScript合并两个数组的正确方法是什么? 我有两个数组(例如): 我希望能够得到类似以下的结果: 在基于“ id”字段将两个数组连接在一起的地方,仅添加了额外的数据。 我试图用它来做,但是它只是将第二个数组中的值覆盖到第一个数组中 问题答案: 这应该可以解决问题: 假定a1中第二个对象的id应该为2而不是“ 2”