2016-06-28 16 views
0

我是SQL新手,正在使用MonetDB将大文件加载到R studio中。我一直在使用monetDB加载我的数据作为一个数据块,而现在想上的数据在这个数据库下执行将R代码:使用MonetDB在R中执行mySQL查询

my_selection <- db_data %>% group_by(id) %>% 
    tally(. , sort = TRUE) %>% 
    top_n(100) %>% 
    select(id) 

基本上,我希望将我的数据由“ID”,理货和对它进行排序,并选择其中最大的100个元素。 SQL中的这个等价物是什么?

我执行的查询以下列方式在R:

回答

1

这取决于你使用的DBMS,

SQL-服务器:

SELECT TOP 100 id,sum(YourOtherColumn) as sum_c 
FROM YourTable 
GROUP BY id 
ORDER BY sum_c DESC 

的MySQL:

SELECT id,sum(YourOtherColumn) as sum_c 
FROM YourTable 
GROUP BY id 
ORDER BY sum_c DESC 
LIMIT 100 

如果是别的,告诉我,我会编辑答案。

+0

我R中使用MySQL,以下列方式: my_selection < - dbGetQuery(连接, “SELECT * FROM MY_TABLE [CODE OF INSERT在这里休息]”) – wsp1morlet

+0

@ wsp1morlet然后用我的第二个代码 – sagi

+0

谢谢!我有40个其他栏目。这将如何转化为总和(YourOtherColumn)?另外,请原谅我的无知,但是sum_c是什么意思? – wsp1morlet