图像缩略图

表SQL

版本1.3.0(3.74 KB)由 托马索·贝鲁佐
用于在Matlab表上执行SQL CRUD操作的脚本。

142下载

更新2020年7月17日

查看许可证

#导言#

基本上,这个脚本是一个围绕Matlab表的SQL包装器。对于那些刚接触Matlab并有“用SQL思考”习惯的人,或者对于那些需要完成复杂数据操作任务并努力使用内置表操作函数来实现这些任务的人来说,它特别有用。

#方法和使用#

“table_sql”函数接受单个输入参数,该参数必须是有效的sql CRUD语句(DELETE、INSERT、SELECT或UPDATE),其中表名引用主工作区中定义的普通Matlab表。

解析查询后,脚本将设置SQLite数据库的内存实例,导入表,执行指定的SQL语句,将工作区表与数据库同步,并返回结果。后者的内容取决于执行的操作:
>对于SELECT语句,一个m-by-n表,表示数据库返回的结果集;
>对于DELETE、INSERT和UPDATE语句,表示受影响行数的整数。

#例子#

1) 设置:
负荷(“患者”);
ids=(1:numel(LastName));
t1=表(ID、LastName、Gender、'VariableNames'、{'ID''LastName''Gender'});
t2=表格(ID、年龄、身高、体重、'VariableNames'、{'ID''年龄''身高''体重');

2) 选择(带和不带赋值):
t3=表_sql('SELECT A.ID,A.LastName,B.Age FROM t1 A internal JOIN t2 B ON B.ID=A.ID');
表_sql('SELECT Age,AVG(Height)FROM t1 A INNER JOIN t2 B ON B.ID=A.ID GROUP BY Age ORDER BY Age');

3) 修改:
ar=表_sql('DELETE FROM t1,其中Gender=“Male”);t1
ar=表_sql('UPDATE t2 SET Age=Age+1,其中Age>=40');t2

#注释#

>该脚本需要SQLite JDBC驱动程序,可从以下链接下载:https://bitbucket.org/xerial/sqlite-jdbc/downloads/. “.jar”文件必须放在脚本文件夹中。
>被查询表的列类型规范化如下:类别和字符串变成字符数组,逻辑变成8位整数(字节),整数变成双精度。

引用为

托马索·贝鲁佐(2021年)。表SQL(//www.tianjin-qmedu.com/matlabcentral/fileexchange/68771-table-sql),MATLAB中央文件交换。恢复.

MATLAB版本兼容性
使用R2018a创建
与R2015b至R2018b兼容
平台兼容性
窗户 马科斯 Linux

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!