盖伯瑞尔哈,MathWorks
数据库资源管理器应用程序连接访问关系/SQL数据和在MATLAB中分析它的过程®.它的可视化界面允许您快速地将数据拉入一个MATLAB友好的表格格式,而不需要知道微软®SQL编程语言。然后,您可以使用其他MATLAB工具和函数轻松地执行后续分析,并自动生成代码来检索数据库结果,以便其他人可以复制您的工作。
看到更多的信息在数据库资源管理器应用程序。
Database Toolbox使您能够将MATLAB知识应用于存储在数据库中的数据,即使您不熟悉数据库语言。数据库资源管理器应用程序体现了数据库工具箱的这一价值,本视频将给你一个快速而全面的概述的应用程序,它允许你以可视化的方式与关系数据交互。即使您不熟悉SQL,也可以将这些数据带入MATLAB进行进一步分析。
最重要的是:它在哪里?只要打开“应用程序”选项卡,如果你遇到一大堆不同的应用程序,只要用“数据库”这个词搜索就可以了。
这个演示以一个MySQL数据库为特色,我们首先需要建立一个连接。从Connect菜单中选择此选项,然后填写适当的详细信息。特别是,需要将MATLAB指向数据库驱动程序的位置,该驱动程序通常是用于JDBC连接的jar文件。如果您不知道这些参数,只需与您的IT联系人联系,提供详细信息。
我们将测试连接提供我们的用户名和超级机密密码。既然测试成功了,我们就可以开始了。
让我们正式连接到我们的数据库,现在我们在connect菜单中找到它。我们将提供凭据,在我们的示例中,目录是toy_store。有了它,我们都准备好去探索了!
左边的面板列出了数据库中找到的所有表,如果我们选择一个,我们将看到数据的预览,以及生成该结果的SQL查询;如果你想学习一些SQL,这是一个很好的学习工具。我们可以展开表并查看列的列表,以获得更完整的数据库视图,并且可以根据我们想要看到的内容选择和取消选择列。我们还可以更改数据预览中显示的项目数量。
让我们看看一些基本的功能。库存表的结果目前是按产品编号排序的,但我们可能想按其他东西排序,比如价格。只需点击“order by”,选择Price列,添加这个,现在我们可以轻松地使用升序或降序价格查看结果。
所以当我看着这些数据时,我对自己说:“天哪,如果能知道这些产品到底是什么,那就太好了,因为从描述的角度来看,产品编号是没用的。”下载188bet金宝搏如果我切换到产品表,我注意到有一个productDescription列,这似乎是我想要的。但在当前视图中,我不能选择信息与库存表。
为此,我们需要连接表,这是一个非常常见的SQL操作。我们只需选择第一个表,然后单击Join。我们将选择要连接的表,然后选择两个表中都存在的列;否则我们的结果就没有多大意义了。默认情况下,这将执行一个内部连接,这通常是您想要的,因为它给出了表的交集。您还会注意到右下角的图表,它直观地帮助您了解正在发生的事情。现在我们已经完成了这些,我们可以以任何有助于增强我们对数据理解的方式查看和选择这两个表的内容。
所以在这个时候,假设我的老板走进来说,“我需要你告诉我我们二月份的总销售额。”在salesVolume表中有一个2月份的列,所以这可能就是我要找的。因为我也有价格信息,我可以把它们相乘,然后相加得到最终答案。
但记住,我不能得到所有东西的完整视图因为我们还没有连接到表;我们需要对已经连接的结果进行额外的连接。我们注意到销售量表没有产品编号列,但是它做有一个库存编号列,如果您注意到,它也包含在产品表中。
让我们在这个共享列上执行另一个连接。注意,图表已经更新,向我们展示了正在发生的事情,现在,当我们返回时,我们可以在其他两个上下文中完全访问销售量表。我们将继续并向查询中添加一些列,现在我们将在一个地方获得2月份或任何月份的总销售额的所有信息。
有一个问题:我们有一些丢失的数据,由这个NaN表示。不管我们处理丢失数据的策略是什么,确保以一致的方式处理丢失数据是很好的。
这就是导入选项发挥作用的地方。如您所见,对于任何double类型的数据,默认情况下都是作为NaN导入的,但是我们可以将特定列改为导入0。作为另一个例子,请注意inventoryDate目前是作为char导入的,但是将它指定为dateTime更有意义,dateTime有自己的菜单,我们可以按照自己的想法格式化dateTimes。
现在我们的数据已经清理完毕,可以为我的老板执行分析了。如果您是一个SQL专家,实际上您可以完全在SQL中执行所有的计算,但如果我们仅仅利用现有的MATLAB知识,可能会更容易。数据库资源管理器允许我们将数据以表的形式导入MATLAB。我们将首先清理选定的列,导出数据并查看一下。
我们要做的就是取价格列和二月列的点积,这就得到了每一项的总销售额,然后把它们加起来就得到了答案。
现在,我可以把结果通过电子邮件发给我的老板,或者我可以给他一个更好的结果,告诉他每个月,甚至全年的总销售额,因为这真的不是那么难。
你可以在MATLAB中做的一个技巧是从表中提取多个列到一个矩阵中,这让你可以执行矩阵运算。在本例中,我们需要第1列:价格,第5列到第16列对应的销量。我们将价格数据提取为向量,然后将所有销售数据提取为矩阵。每一行代码中的第一个冒号表示我想要所有的行,下一个参数表示我感兴趣的列。注意,我使用大括号符号来获取数组或矩阵数据,而不是表。
现在我们可以简单地使用点*运算符将price数组中的点积应用到每个月上。对这个矩阵求和就得到了每月的销售额。求和那矩阵,我们全年的销售额,很简单,希望我能把这个邮件发给我的老板,让他高兴。
既然这是一个数据库资源管理器应用的演示,为什么还要费劲地看这些MATLAB代码呢?除了向你们展示一些新的编码技巧,我想强调的是,有相当多的分析可以应用到你的数据中。您已经有了这个很棒的设置,但您可能已经忘记了如何检索所有数据。对你的同事和未来的自己来说,能够复制你的成果是很重要的。
数据库资源管理器可以生成一个MATLAB脚本,只需点击一下,该脚本将做我们刚刚做的一切,从数据库中获取数据。
需要注意的一点是,这个应用程序不保存您用于连接数据库的密码,出于明显的安全原因。任何使用这段代码的人都需要在这行代码中提供适当的凭证,如果你看这个视频是任何正派的人,你现在不要看你的电脑屏幕,这样你就不会看到我的超级秘密密码是matlab向下滚动……好的,你可以再看一遍。
为了完成这个脚本,让我们添加我们的MATLAB工作。为了清晰起见,我们将创建一个新的部分,粘贴到我们的命令行工作中,现在任何未来的同事和我们未来的自己都可以轻松地复制我们的结果。
因此,我们已经演示了基本的数据库资源管理器工作流:可视化地与您的数据交互,将其带入MATLAB,执行您的分析,并使其可重复。
以下是一些你可能会发现有用的数据库资源管理器特性:
您可以生成用于检索结果的SQL查询。
可以使用WHERE语句过滤数据库项。例如,假设我只想看所有便宜的东西,比如任何标价低于10美元的东西。点击Where,我们会说我们想要价格,比你想要的要低。如果你需要聪明点,你甚至可以将它与另一列中相应的值进行比较,但我们选择10,现在我们看到了这些项。
这些选择绝不是相互排斥的。你可以连接按一个列排序的表,当另一个列大于20时,没有重复……你可以在SQL中这样做。
最后,但同样重要的是,如果您熟悉SQL,您可以直接编辑SQL查询。这给你的语言的全部好处,这可能不是直接启用我们的按钮,而仍然能够自动生成SQL通过与应用程序的交互。
当我们点击“Manual”时,它会保留我们间接生成的任何SQL代码,现在您可以输入任何您想要的内容。注意,这将在Database Explorer中打开一个新选项卡,它作为一个独特的工作环境。你可以在同一个数据库或其他数据库中有多个会话;只需使用“New Query”按钮,您仍然可以访问以前的工作。
使用数据库资源管理器可以轻松地访问和分析关系数据,即使您不了解SQL,也可以利用它。感谢观看,点击描述中的链接获取更多信息,不要犹豫,给我们反馈。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。