我什么时候应该使用C++而不是SQL?

Aud*_*oid 24 c++ mysql sql data-analysis

我是一名C++程序员偶尔使用MySQL来处理数据库,但我的SQL知识相当有限.但我肯定愿意改变这一点.

目前我正在尝试对数据库中的数据进行分析(!),仅使用SQL查询.但我即将放弃,而是将数据导入C++并使用C++代码进行分析.

我和我的同事讨论过这个问题,他们也让我使用C++,说SQL不是用于复杂分析,而是主要用于导入(从现有表)和导出(到新表)数据,还有更多例如将数据合并到 - 例如 - 连接表.

有人可以帮我划清界限吗?所以我知道何时切换到C++?当然,性能也是一个问题.

什么迹象表明事情在SQL中变得复杂?或者我可能只是采用错误的方法来设计查询.那我在哪里可以找到教程,书籍......采取更好的方法?

我希望这不是太模糊.我真的有点失落.

JNK*_*JNK 24

SQL擅长分析大量关系数据.

绘制线的位置是分析的比例.

如果您一次分析一个记录,请在您的应用程序中进行.

如果将大型记录集分析为一个单元,那么SQL绝对是该工作的最佳工具.

逐行分析不是SQL的设计或优化.但是,如果您想了解一百万行数据组,请在数据库中进行.

  • 这是术语论证所以它们毫无结果.我相信你给出的答案完全正确. (2认同)

asc*_*nio 7

我和我的同事讨论了这个问题,他们也推动我使用C++,说SQL不是用于复杂分析,而是主要用于导入(从现有表中)和导出(到新表)数据,还有更多例如将数据合并到 - 例如 - 连接表.

这完全是武断的.学习SQL.网上有很多资源可供免费使用.


Wal*_*tty 5

如果您知道如何使用SQL提供的功能,则可以对SQL中的数据进行非常复杂的分析.

SQL具有执行关系操作的功能,如连接和投影.还用于执行联合,交集和限制(子集)等集合操作.还用于对数字进行基本算术,如四个算术运算符,以及内置函数,如SQRT.还有COUNT,SUM和AVG等统计函数,可以非常有趣的方式与投影结合使用.一个好的DBMS将允许您使用您自己的用C,C++或PL/SQL编写的函数扩展内置函数.

您从这些功能获得的功能取决于数据库的设计.设计良好的数据库符合关系模型,并且应该与您对数据的预期用途相关.

SQL代码可以存储在存储的prodecures中的数据库中.它可以存储在SQL脚本文件中.而且,正如您所知,它可以嵌入到应用程序中.除了SQL之外,您还可以使用OLAP工具和报表生成器轻松地对数据执行标准操作.

那些建议你用C++保持所有处理声音的人听起来就像他们已经学会了足够使用像大而愚蠢的文件系统这样的数据库.一个好的DBMS远不止于此.