Po përpiqem të kuptoj se si të nxjerr të dhëna nga një tabelë SQL Server dhe të ruaj përmbajtjen e një tabele, në skedarë të veçantë CSV, bazuar në një fushë të quajtur ASOFDATE. ASOFDATE ime është një datë e përfundimit të muajit.
Ja çfarë kam deri tani.
library(RODBC)
# connect to database
dbhandle = odbcDriverConnect('driver={SQL Server};server=SERVER_NAME;database=DATABASE_NAME;trusted_connection=true')
sampledata <- sqlQuery(dbhandle, "select * from [SERVER].[dbo].[TABLE]")
# Close the connection
close(dbhandle)
# Create a Date vector containing the 1st of all the subsequent months and subtract 1 day
# date.end.month <- seq(as.Date("2012-02-01"),length=4,by="months")-1
ASOFDATE <- seq(as.Date("2016-02-01"),length=12,by="months")-1
Disi këtu mendoj se duhet të kaloj nëpër DataFrame, por nuk jam i sigurt se si ta bëj.
for (i in sampledata) {
do some kind of filter by ASAOFDATE
write.csv(sampledata, paste0("C:/Users/RSMITH/Desktop/test/", ASOFDATE, ".csv"), row.names = FALSE)
}
Kështu, për shembull, unë e përdor këtë për të marrë të dhëna nga tabela.
grupi i të dhënave ‹- sqlFetch(dbhandle, "DATA")
Grupi i të dhënave ka këto fusha: N_ID,SEQ_NO,REPORT_PERIOD_END,CONTACT_ID,CONSOL_KEY,CUSTOMER_NAME,COMPANY_CODE,SECTOR,OFFICER,ASOFDATE,COMPANY,REPORT_LINE
Unë krijoj një listë me datat e fundit të muajit që dua të 'filtroj' për: ASOFDATE ‹- seq(as.Date("2016-02-01"),length=12,by="muaj")-1
Më pas, 'filtro' regjistrimet në tabelë, bazuar në ASOFDATE, dhe ruani secilën pjesë si një CSV, me datën në emrin e skedarit.
Jam 100% i sigurt se kjo është e mundur, por thjesht nuk di si t'i ndaj të dhënat në copa dhe të ruaj çdo pjesë.
sqlFetch(dbhandle, "TABLE_NAME")
? Për mënyrën se si ta bëni këtë, shihni këtu. 26.05.2017ASOFDATE
brendadataset
? Pse nuk mund ta përdorni siç sugjerova?dataset %>% split(.$ASOFDATE) %>% ...
26.05.2017dataset
tuaj. 26.05.2017