【R】dbplyrとSQL

データベースのSQL文とdbplyrを行ったり来たり。

まずは、SQL文からdplyrのコードを書きだしてみます。

library(dplyr)
library(dbplyr)
library(tidyquery)

df <- data.frame(a=1:5, b=c(1, 3, 4, 2, 6))

show_dplyr("SELECT a, b, a * power(b, 2) AS c FROM df ORDER BY b")
df %>%
  transmute(a, b, c = a * b^2) %>%
  arrange(b)

反対に、dplyrのコードからSQL文を書き出してみます。

df_db <- memdb_frame(df)
df_db %>% 
  mutate(c = a * b, d = b + 2) %>% 
  show_query()
<SQL>
SELECT `a`, `b`, `a` * `b` AS `c`, `b` + 2.0 AS `d`
FROM `dbplyr_002`

Add a Comment

メールアドレスが公開されることはありません。