2012-04-30 2 views
0

각 테이블에 시간 기록이있는 6 백만 개가 넘는 레코드가있는 MySQL 테이블이 있습니다. 하루 종일 모든 타임 스탬프를 그려야합니다. 즉, 하루 24 시간 동안 모든 시간 소인이 오전 7 시부 터 오전 8 시까 지, 오전 8 시부 터 오전 9 시까 지 있는지 확인해야합니다. 나는 요일이나 달에 의해 계획된, 단지 하루 중 시간을 필요로하지 않습니다. 각 시간 소인은 UTC입니다.matlab 쿼리를 사용하여 응용 프로그램이 어떻게 사용되는지 확인합니다.

누군가 나를 도울 수 있습니까?

답변

1

MySQL의 FROM_UNIXTIME 함수를 사용하여 데이터베이스에서 날짜 문자열을 가져 와서 결과를 파일로 덤프 할 수 있습니다.이 파일을 나중에 MATLAB으로 읽을 수 있습니다. 당신은 하나의 데이터 읽을 경우, 예를 들어

datevec('2007-11-30 10:30:19') 

ans = 

    2007   11   30   10   30   19 

: 다음 각 레코드의 하루의 시간을 추출하는 방법 중 하나는 별도로 날짜 문자열의 각 구성 요소를 얻기 위해, MATLAB의 datevec 기능을 사용하는 것입니다 이 벡터에 datevec을 적용한 다음 결과 행렬의 '시간 열'을 가져올 수 있습니다. 빈 센터 또는 빈 가장자리 지정 여부에 따라 hist 또는 histc 함수를 사용하여 개수 막대 그래프를 만들 수 있습니다. 시간 열이 H 인 경우 hist(H, 0:23)과 같은 값을 사용해야합니다. histc 함수는 데이터의 특성상 조금 더 자연스럽지 만 약간 더 복잡합니다. 설명서를 확인하십시오.

관련 문제