【问题标题】:COPY CSV files, then analyze? step by step?复制 CSV 文件,然后分析?一步步?
【发布时间】:2012-04-11 11:19:17
【问题描述】:

我刚刚开始上传 CSV 文件并在我工作的公司的数据库中创建表格。有人能解释一下确保副本完整且没有错误的正确步骤吗?

我的老板告诉我他们做事的几个步骤:

创建表 -> 复制

插入数据 -> 创建索引/约束(如有必要) -> 表分析

表格分析部分对我来说是令人困惑的部分。他们告诉我分析表格,然后检查错误,然后获取估计行。我该如何处理估计行?我使用了ANALYZE table_name,但数据输出上没有真正显示。

请帮忙!

【问题讨论】:

标签: sql database postgresql csv import


【解决方案1】:

我的回答将采取稍微不同的策略。

很明显,你的老板给了你指示,而你却不明白。在我看来,重要的是你要回到你的老板那里,不断提问直到你明白为止。

这有很多重要的原因: 1. 你明白你被要求做什么(而不是我们猜测)。 2. 如果出现问题,您已按照要求完成,并且 3. 你可能会学到一些东西。

提问(“再问菜鸟问题”)让你看起来很愚蠢或无知的态度是非常危险的,实际上会让你变得愚蠢和无知。

在开发了一些非常复杂的软件系统 30 年后,每当我有不明白的地方时,我仍然会提出问题。结果?最后,我明白了。

这是真正变得更好的唯一方法。我们没有人天生就知道如何做每一件事。

【讨论】:

  • 我会的。尽管我尝试通过上网并在给他们带来麻烦之前先进行研究来尽可能地避免这种情况。但无论如何,谢谢你的建议!
【解决方案2】:

这听起来像是一个很大的误解。你的老板可能只是想让你逃跑

ANALYZE table_name;

为每个表更新统计信息(包括行估计)。查询计划器使用这些统计信息来选择如何最好地执行查询。阅读关于ANALYZE的精美手册。
如果您不理解指示,最好下次问您的老板。

【讨论】:

    【解决方案3】:

    通常您需要检查几件事

    • 插入的行数一致
    • 数据类型足够(确保您没有为变量分配太多或太少的空间)
    • 数据类型是一致的(即,如果在设计中,您将整数数据类型用于整数)
    • 不存在由特殊字符引起的错误(如果使用适当的分隔符,则不会出现此问题)

    我的假设是“获取估计行数”,他只是想要返回的行数。我将由您决定如何确定。

    如果正确创建了 CSV 文件,我就不会费劲了。不要害怕向同事寻求帮助或建议,这就是你学习的方式!

    祝你好运!

    【讨论】:

    • 谢谢迈克尔!这帮助很大!
    • 我做到了。我想我只是有点偏执。实际上并没有那么糟糕!仍然试图了解这里的事情是如何运作的,所以我肯定会继续提问。再次感谢!
    猜你喜欢
    • 2019-10-30
    • 1970-01-01
    • 2017-08-29
    • 1970-01-01
    • 2018-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多