#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 |