2016-06-28 35 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