library(odbc)
## Warning: package 'odbc' was built under R version 4.4.3
library(DBI)
## Warning: package 'DBI' was built under R version 4.4.3
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.3
Selanjutnya membuat koneksi antara RStudio dengan database MySQL yang berisi dataset.
con <- DBI::dbConnect(odbc::odbc(),
Driver = "MySQL ODBC 8.0 ANSI Driver",
Server = "127.0.0.1",
Database = 'classicmodels',
UID = "root",
PWD = "Linka12012006", #sesuaikan dg password masing-masing
Port = 3306)
Pengambilan Data dari Database
data_nordic <- dbGetQuery(con, "
SELECT
o.orderNumber,
SUM(od.quantityOrdered * od.priceEach) AS value
FROM orders o
JOIN orderdetails od ON o.orderNumber = od.orderNumber
JOIN customers c ON o.customerNumber = c.customerNumber
WHERE c.country IN ('Denmark','Finland','Norway','Sweden')
GROUP BY o.orderNumber
")
Query SQL tersebut melakukan beberapa proses: Menggabungkan tabel orders, orderdetails, dan customers menggunakan JOIN.
Menghitung nilai pesanan (value) dengan rumus: value = quantityOrdered × priceEach
Menggunakan kondisi WHERE untuk mengambil data hanya dari negara Nordic: Denmark, Finland, Norway, Sweden Menggunakan GROUP BY agar nilai pesanan dihitung untuk setiap order. Hasil query disimpan dalam data frame data_nordic.
Melihat Data
head(data_nordic)
Visualisasi Histogram
ggplot(data_nordic, aes(x = value)) +
geom_histogram(binwidth = 10000,
fill = "skyblue",
color = "black") +
labs(title = "Histogram Nilai Pesanan dari Negara Nordic",
x = "Nilai Pesanan (Value)",
y = "Frekuensi") +
theme_minimal()