问题标签 [monetdb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 如何将列添加到 monet.frame?
如何将列添加到monet.frame
-object?
monet.frame
例如,如果我想向被调用 添加一个简单的行 ID data
,我可以通过执行以下操作来实现:
但必须有一种不那么老套的方式。如果您按照上面给出的方式执行此操作,则新创建的id
-column 在您执行时不会显示,str(data)
或者names(data)
,例如,因为当底层数据库更改时该信息不会更新 --- 它是在data
初始化时生成的,而不是在调用这些访问函数的位置。它确实在直接访问行时出现,data
因为查询会按写入方式执行。
像上面这样的事情仍然安全吗?
更一般地说,我需要做一些monet.frame
超出包中可用功能的事情,并且有兴趣知道如何在 a 上运行更一般的 SQL 查询monet.frame
,类似于dplyr
's sql()
-function 允许的内容。我会很感激这方面的任何指示——例如,我是否必须使用dbSendQuery
etc. 并将其结果转换为 new monet.frame
?如何?
编辑:
没关系,应该更仔细地阅读手册,我没有看到它monet.frame
接受可以解释为 SQL 查询的字符串以及数据库中已经存在的表名。
这就是我现在的做法:
编辑 2:如果应用于由涉及 ORDER、LIMIT 或 OFFSET 语句的查询monet.frame
创建的 a ,这将中断。transform.monet.frame
centos - how do I install MonetDB on Centos 6.5?
I would like to install MonetDB on Centos 6.5.
MonetDB website describes how to install for Debian / Ubuntu / Fedora distributions.
I've a server on Centos 6.5 (and I'm not entirely sure to which Fedora distribution this should compare with).
Obviously I would like to install the latest binaries of MonetDB: I would rather avoid to install from source (unless strictly necessary).
How do I do it?
sql - MonetDB.R 的 `na.omit` 坏了吗?
我认为MonetDB.R
过滤 NA 的方式存在错误,请参见下面的示例代码:
用于对对象进行一般 SQL 查询的便捷实用功能monet.frame
:
例子:
100行!?!应该是90...
我想我理解为什么引用列名是必要的(所以这也适用于非标准列名,对吗?),但是为什么这会弄乱查询结果呢?这两个不应该是完全等价的查询吗?另外,如果确实需要引用列名,为什么第一次出现的xna
没有被引用
我注意到这一点是因为它也会使其他monet.frame
-methods 行为异常,例如:
编辑添加:
na.fail
似乎也坏了:
它不会引发错误,而是在应用于包含 NA 的列时返回 NULL,并带有一个神秘的警告,乍一看表明实际上没有 NA:
如果没有 NA,na.fail()
则应根据泛型文档原样返回其参数,但它也不这样做:
.net - 您如何为 .net 引用 monetdb odbc 驱动程序
我正在尝试从 .net 应用程序访问 monetdb - 看看它是否适合我使用。我已在我的机器上下载并安装了 ODBC 驱动程序(来自 monetDB.org)。我无法添加对它的引用。我的假设是要引用的正确文件是 libMonetODBC.dll 并且不起作用 - 其他文件也不起作用。如果我尝试添加对它的引用,我会收到一条消息 - “无法添加对 'C:\Program Files\MonetDB\MonetDB ODBC Driver\lib\libMonetODBC.dll' 的引用。请确保该文件是可访问的,并且它是一个有效的程序集或 COM 组件。”
有没有人试过这个,你是怎么做的?同样,我的假设是我应该能够像所有其他人一样引用 dll,然后添加一个 using/imports 语句以在应用程序中使用它。我没有看到很多文档或其他人从 .net 使用它。MonetDB.org 似乎没有其他步骤,除了从 excel 或其他东西中使用它。我错过了什么?
python - 如何在 python 中从头开始设置(新的)monetdb 数据库?
我正在尝试使用 python 创建一个 monetdb 数据库。数据库一开始不存在:代码应该创建它,指定端口,它将驻留的文件夹和数据库名称。我可以清楚地假设数据库已经存在的所有示例。在某种程度上,这应该类似于通常由 moneddbd 守护程序管理的操作。如何从头开始在 python 中设置(新)monetdb 数据库?
r - monetdb & R 的 CSV 加载错误
我正在尝试使用 R 和 RStudio 将各种 CSV 加载到 monetdb 中,但出现以下错误。这是代码(使用 iris 数据集测试的代码,通常工作正常)和错误消息:
我要加载的文件是一个简短的 csv:
RStudio 可以毫无问题地读取上述 CSV 文件。更重要的是,我可以用 read.csv 将这个 CSV 读入 R 数据帧,然后用 write.table 写一个 CSV 文件。现在我可以使用上面的代码毫无问题地将这个“新”CSV 加载到 monetdb 中。
请注意,我尝试在各处使用引号“”来编辑文件,以查看是否是问题所在,但仍然出现错误。
sql - SQL语句生成一列,其值为记录索引
我有一些 SQL 表,比如单列 c1:
c1 |
---|
10 |
3 |
1 |
10 |
5 |
现在,我想发出一个 SQL 命令(不是我的 DBMS 的某些操作,我故意没有提到),这导致我的表是:
c1 | 记录索引 |
---|---|
10 | 0 |
3 | 1 |
1 | 2 |
10 | 3 |
5 | 4 |
很简单……这可以吗?显然,你事先并不知道表的长度,所以没有 SQL 插入或类似的技巧。
注意:我想要一个一般性的答案,但要具体一点 - 我正在使用MonetDB。
sql - 使用 where 子句与 group by 的最小/最大查询
运行 MonetDB 数据库服务器工具包 v1.1 (Feb2013-SP6)
这个查询
为每个行类型返回正确的最小和最大日期。
这个查询,在同一张表上
似乎“忽略” where 子句,返回
我还没有找到该答案的一般 sql 先例(还)。这是预期的反应吗?
我期待这个
我在 Oracle 和 SQL Server 中尝试了类似的查询并得到了我的预期响应。然而,我发现支持“忽略”where 子句的通用 sql 注释。也许这是 MonetDB 使用特定 SQL 标准的一个案例?
indices - monetdb - 复制到 from...需要没有索引的表
当我尝试在有主键和外键的表中加载 .tbl 数据时,Monetdb 出现此错误,这是怎么回事?这是命令:
sql-update - 如何使用另一个表或子查询的聚合结果更新表?
首先,我使用 MonetDB Database Server Toolkit v1.1 (Feb2013-SP1) 中的 MonetDB 分支
我有两张表,想在不创建临时表的情况下完成以下两个功能:
1)从另一张表更新一张表;2) 从另一个表的聚合中更新一个表。
我想出了如何在 MySQL 和 Postgresql 中执行它们,但在 MonetDB 中类似的查询失败了。
对于 1),假设我有以下两个表:
当它们的 id 匹配时,我们需要将 t1.data 设置为 t1.data+t2.data,t1.id=t2.id。
在 MySQL 中,我们可以使用:
在 Postgresql 中,我们可以使用:
或者对于两者,我们可以使用:
但是它们都不能在 MonetDB 中工作。
这个问题类似于之前提出的问题(https://www.monetdb.org/pipermail/users-list/2011-August/005072.html),但回答的建议似乎不正确。那里的两个表对于元组 id=2 具有相同的值。
因此,在这个查询中,select 的第一个子查询中的数据字段实际上来自 t2 而不是 t1。但是,如果我们更改为 t1.data,解析器将无法识别名称 t1。它以某种方式连接它可以识别条件子句中的 t1.id。
并不是说以下查询也不正确:
由于子查询变得独立于外部查询,并且可能导致违反赋值基数的多个值。
更改 t1 和 t2 中的字段名称也无济于事。
对于 2),假设我们有以下两个表:
我们想要聚合 t2 中的值并将结果分配给 t1。
在 MySQL 中,我们可以使用:
或者在 Postgresql 中,我们可以使用:
在 MonetDB 中,如何在更新语句中正确编写这样的子查询?
看起来 MonetDB 在 select 中支持 with 子句,但在 update 中不支持。
我也很想知道使用子查询和创建临时表之间的性能差异。
谢谢!