0
你能幫助我3個表,以瞭解如何我可以用sqlQuery
功能從RODBC
包創建和之間left join
一個master table
x1
和其他兩個表x2
R.在R和sqlquery函數使用RODBC包加入從數據庫
後,我建立數據庫連接我可以成功連接兩個表:
library RODBC
dataframe <-sqlQuery(conn,"
SELECT
sum(A1.revenue1),
sum(A1.revenue2),
sum(A1.revenue3),
A2.SERVICE_TYPE_NAME
FROM
(FINANCE.x1 A1 LEFT JOIN CORE.x2 A2
ON (A1.YEAR_NUM = A2.YEAR_NUM
AND A1.SERVICE_TYPE_KEY = A2.SERVICE_TYPE_KEY)
)
WHERE A1.YEAR_NUM = '2015'
AND A2.SERVICE_TYPE_KEY='2'
GROUP BY A2.SERVICE_TYPE_NAME
")
,但我失敗了,當我嘗試將一個第三方程嘗試這樣的:
dataframe <-sqlQuery(conn,"
SELECT
sum(A1.revenue1),
sum(A1.revenue2),
sum(A1.revenue3),
A2.SERVICE_TYPE_NAME
FROM
(FINANCE.x1 A1 LEFT JOIN CORE.x2 A2
ON (A1.YEAR_NUM = A2.YEAR_NUM
AND A1.SERVICE_TYPE_KEY = A2.SERVICE_TYPE_KEY)
FINANCE.x1 A1 LEFT JOIN BRAND.x3
ON (A1.brand_ID=A3.brand_ID))
WHERE A1.YEAR_NUM = '2015'
AND A2.SERVICE_TYPE_KEY='2'
GROUP BY A2.SERVICE_TYPE_NAME
")
這是一個純粹的SQL問題。如果連接之前曾經工作過一次,那麼當SQL被排序時,R就沒問題。 – NJBurgo
您可能還想使用您正在使用的SQL版本進行標記。無論如何,我給了你一個下面的查詢應該工作。 –
謝謝,這有幫助。當我連接到DB2並且RODBC包在這種情況下具有特定的語法時,我很掙扎。我也是剛開始使用SQL的新手。 –