#install.packages("DBI")
library(DBI)
## Warning: package 'DBI' was built under R version 3.5.3
#install.packages("RMySQL")
library(RMySQL)
## Warning: package 'RMySQL' was built under R version 3.5.3
#install.packages("RODBC")
library(RODBC)

==================================================================================================================

連接資料庫

connect<-DBI::dbConnect(drv=RMySQL::MySQL(),
                       host="127.0.0.1",
                       port=3306,
                       user="root",
                       dbname="taxi")

connect <- odbcConnect(dsn="taxi" , uid="root", pwd="", DBMSencoding="UTF8")

==================================================================================================================

顯示資料表欄位

sqlTables(connect)
##   TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS
## 1      taxi                   司機      TABLE        
## 2      taxi               歷史統計      TABLE        
## 3      taxi                   熱點      TABLE        
## 4      taxi                   飯店      TABLE        
## 5      taxi                   餐廳      TABLE

==================================================================================================================

向SQL查詢熱點資料表的熱點欄位,並規定要行政區在皇后區的熱點

Data1 = sqlQuery(connect, "SELECT * FROM `熱點` WHERE 行政區 = '皇后區' " )

結果表格

knitr::kable(Data1)
熱點 行政區 天氣 地址 經度 緯度 備註
約翰·甘迺迪機場 皇后區 S Queens, NY 11430 -73.7786 40.6413
拉瓜地亞機場 皇后區 B Queens, NY 11371 -73.8739 40.7769
拉瓜地亞機場_D航廈 皇后區 B Terminal D, Gate 3, LaGuardia Airport (LGA), Flushing, NY 11371 -73.8616 40.7695
土耳其文化中心 皇后區 B 43-49 45th St, Sunnyside, NY 11104 -73.9194 40.7436 旁邊有商店街

==================================================================================================================

向SQL查詢飯店資料表的飯店欄位,並指定查詢飯店名稱為Sweet Home- Midtown的熱點

Data2 = sqlQuery(connect, "SELECT * FROM `飯店` WHERE `飯店名` = 'Sweet Home- Midtown' " )

結果表格

knitr::kable(Data2)
Hotel_Id 飯店名 地址 緯度 經度 熱點
1 Sweet Home- Midtown 458 W 52nd St, New York, NY 10019 40.76557 -73.99055 曼哈頓中城
11 Sweet Home- Midtown 456 W 52nd St,New York, NY 10019 40.76569 -73.99053 曼哈頓中城

==================================================================================================================

向SQL查詢餐廳資料表的餐廳欄位,並指定查詢餐廳名稱Torishin為的熱點

Data3 = sqlQuery(connect, "SELECT * FROM `餐廳` WHERE `餐廳名` = 'Torishin' " )

結果表格

knitr::kable(Data3)
Restaurant_Id 餐廳名 地址 開始營業 結束營業 緯度 經度 熱點
8 Torishin 798 9th Ave, New York, NY 10019 17:30 00:00 40.76512 -73.98717 曼哈頓中城

==================================================================================================================

向SQL查詢歷史統計資料表的date欄位,得出歷年來date為8/30號的DayAveCount(日載客人數)與MonthAveCount(月載客人數)和YearAveCount(年載客人數)欄位

Data4 = sqlQuery(connect, "SELECT `date` , `DayAveCount` , `MonthAveCount`, `YearAveCount` FROM 歷史統計 WHERE `date` = ' 8/30' " )

結果表格

knitr::kable(Data4)
date DayAveCount MonthAveCount YearAveCount
8/30 9.000000 10.00 12.00
8/30 9.229999 10.22 12.35

==================================================================================================================

向SQL查詢歷史統計資料表的date欄位,得出歷年來date為7/30號的DayAveFare(日收入)與MonthAveFare(當月收入)和YearAveFare(當年收入)欄位

Data5 = sqlQuery(connect, "SELECT `date` , `DayAveFare` , `MonthAveFare`, `YearAveFare` FROM 歷史統計 WHERE `date` = ' 7/30' " )

結果表格

knitr::kable(Data5)
date DayAveFare MonthAveFare YearAveFare
7/30 10.1 11.05 11.35
7/30 10.1 11.05 11.35