2016-06-28 7 views
0

Ich bin neu in SQL und verwende MonetDB, um eine große Datei in R Studio zu laden. Ich habe meine Daten als db mit MonetDB geladen und möchte nun die R-Code unten auf den Daten in dieser Datenbank auszuführen:Ausführen von mySQL-Abfragen in R mit MonetDB

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

Grundsätzlich möchte ich meine Daten zu einer Gruppe von „id“, Tally und Sortiere es und wähle die 100 größten Elemente aus. Was wäre das Äquivalent in SQL?

Ich Ausführung von Abfragen in der folgenden Art und Weise in R:

Antwort

1

, die auf dem DBMS abhängig sind Sie verwendet,

SQL-Server:

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 

Wenn es etwas anderes ist, sag es mir und ich werde die Antwort bearbeiten.

+0

Ich verwende MySQL, in der folgenden Art und Weise in R: my_selection <- dbGetQuery (Anschluss, "SELECT * FROM my_table [INSERT REST CODE HIER]") – wsp1morlet

+0

@ wsp1morlet Dann meinen zweiter Code – sagi

+0

Dank verwenden! Ich habe 40 andere Spalten. Wie würde dies in Summe (YourOtherColumn) übersetzen? Verzeihen Sie auch meine Unwissenheit, aber was meinen Sie mit sum_c? – wsp1morlet