mysql
  • datediff
  • 2014-10-31 2 views 0 likes 
    0

    시작일을 '2011 년 7 월 11 일 2:00 AM '으로 간주했습니다 (아래 설명 참조). 나는 "YYYY : DD : MM Min : Sec"형식으로 저장된 값을 가진 동일한 테이블에 다른 컬럼을 가지고 있습니다. 시작일부터이 테이블에서 각 항목을 빼서 'Day'라는 새 열에 삽입하려고합니다. 다음은 실행하려는 쿼리입니다.2 일 간의 차이를 계산하고 해당 값을 같은 테이블의 열에 삽입하는 MySQL 쿼리

    set @start = '2014-07-11 02:00:00'; 
    
    use rawlog; 
    insert into api_raw(`day`) 
    VALUES 
    (date_diff(DAY, start, #column_name) 
    

    나는 얻는 오류를 이해하지 못합니다. 이 곳에서 내가 어디가 잘못 될까? 어떤 도움을 주시면 감사하겠습니다. 고맙습니다.

    +0

    이상의라는 함수가 없다'MySQL의에서 date_diff', 당신이'timestampdiff' –

    +0

    TIMESTAMPDIFF보고있다 또한 작동하지 않습니다 생각합니다. start가 정의되었고 컬럼 이름이 아님을주의하십시오. 생각해 줘서 고마워. – DotNetNewBie

    +0

    그래서 시간을 저장하지 않습니까? – Strawberry

    답변

    2

    사용

    DATEDIFF (DATE(@start),DATE(#column_name)) 
    

    오히려

    date_diff(DAY, start, #column_name) 
    
    +0

    나는 그것이 잘못되어 가고있는 것 같아요. 오류 "오류 코드 : 1054. '필드 목록'에서 알 수없는 열 'start'" – DotNetNewBie

    +0

    또한 잊어 버렸습니다. 두 번째 매개 변수는 coulmn_name이 아니라 오히려 시작 형식 (YYYY : DD : MM MM : SS) – DotNetNewBie

    +0

    @DotNetNewBie이 코멘트를 이해할 수 없다. – Strawberry

     관련 문제

    • 관련 문제 없음^_^