2013-06-24 3 views
0

이것은 정말 어리석은 질문처럼 보인다,하지만 난에 대해 아무것도 찾을 수 없습니다 그것은붙여 넣기 다시 틱 또는 R의 요소에 아포스트로피

가정하자 나는 SQL 연결

sql1 = na.omit(sqlQuery(con,paste("SELECT UNIX_TIMESTAMP(timestamp), rawPressure1, rawPressure2 FROM ",sensorname[[1]][1],"_Data WHERE timestamp > '2013-05-25 17:29:00' AND timestamp < '2013-06-10 15:33:00'", sep=""))); 

를 호출 다음 개체가 이 문장은 내가 원하는 모든 데이터를 완벽하게 잡아 먹는다. 하지만 이제는 이것을 조금 자동화하고 싶습니다.

가정하자 I는

> flowobs <- na.omit(read.csv('FlowObs.csv', header=TRUE)) 

    Start     Finish   FlowObs  Head 
1 2013-05-25 17:29:00 2013-05-26 18:38:00 0.3307309 70.8750 
2 2013-05-27 16:22:00 2013-05-28 20:15:00 0.3286909 72.1250 
3 2013-05-29 13:05:00 2013-05-30 14:42:00 0.3211857 74.0000 
4 2013-05-30 15:08:00 2013-06-03 11:54:00 0.3277443 75.0625 
5 2013-06-05 12:13:48 2013-06-06 14:30:00 0.3490507 77.3125 

이제 테스트 [1] [1] (시작 데이터 세트 flowobs 범위 잡고 객체를 만들 수 시작 및 종료 시간 컴파일 오브젝트를 가지고 절차) 후 최종 flowobs [2] [길이 (flowobs [[2]])]

range <- c(paste(flowobs[[1]][1],sep = "'"),paste(flowobs[[2]][length(flowobs[[2]])],sep="'") 

내 문제가 들어오는 곳 그래서 여기에.의 다시 SQL 구문 원을 할 수 있습니다.

...WHERE timestamp > '2013-05-25 17:29:00' AND timestamp < '2013-06-10 15:33:00'", sep=""))); 

SQL 구문을 사용하려면 날짜에 문자열을 둘러싼 역마차가 있어야합니다.

우리가 내 객체의 구조를 보면

당신이

...WHERE timestamp > ",range[[1]]," AND timestamp < ",range[[2]], sep="")));" 

이 잘 작동해야한다는 기대 범위 .... 그렇지 않습니다. 우리가 range 객체의 요소를 볼 때 우리는 이것을 얻는다.

> range[[1]] 

"2013년 5월 25일 17시 29분 0초"

'2013년 5월 25일 17시 29분 0초'

사람은 아이디어가 있지 않음 이 문제를 어떻게 해결할 수 있을까요?

+0

브라우저에 표시 당신은 작은 따옴표 "백 틱"을 요구하고 제안하지만, 어쩌면 제대로 SO 인하에 백 진드기 등의 단지 어려움은? –

답변

1

사용이 :

"...WHERE timestamp > '",range[[1]],"' AND timestamp < '",range[[2]],"'", sep="")));" 
+0

..... 당신은 나를 농담하는 괴물이되어 야합니다. 고맙습니다. – ZDwhite