【问题标题】:Sorting DB or Array排序数据库或数组
【发布时间】:2013-08-26 03:19:20
【问题描述】:

嗨,我在 DB 中有一张关于 4k 笔记的表格,有 2 列(id 和标题)和一个关于 4k 元素的数组。它们都充满了相同的数据。对其进行排序并按排序顺序插入数据库中另一个表的最佳方法是什么?哪种方式需要更少的资源进行排序:使用 SQL 或使用数组快速排序自己编写代码?使用数组和数据库哪个策略更好?

【问题讨论】:

  • 我猜你自己的时间计时会给你答案。我的猜测是数据库会更快,因为这就是他们优化的目标
  • “按排序顺序插入数据库中的另一个表”是什么意思?数据库表未排序。如果您执行select * from ponies,则行通常以可预测的顺序出现(例如,如果您添加索引,则可能会发生变化),但根据定义,表格不会排序。
  • 我知道表格没有排序。

标签: java sql database sorting


【解决方案1】:

如果您查询数据,请使用order by 并首先以正确的顺序加载它。

如果该数据在您的应用程序中可用而无需查询其他表,则不要执行此操作并进行快速排序。您将为您的数据库节省一些工作,它可能会更快,尤其是因为您使用的是 java。

【讨论】:

    【解决方案2】:

    使用内置数据库操作应该更快。外部排序再放回涉及到 I/O 操作,这些操作本身很慢,而且还取决于您使用的语言。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-23
      • 2020-09-23
      • 2020-05-06
      • 1970-01-01
      • 1970-01-01
      • 2012-12-14
      • 1970-01-01
      • 2014-07-10
      相关资源
      最近更新 更多