반응형
날짜보다 큰 연산자를 사용하는 방법
여기서 무슨 일이 일어나고 있는지 모르겠다.다음은 phpMyAdmin의 질의입니다.
SELECT * FROM `la_schedule` WHERE 'start_date' >'2012-11-18';
그러나 2012-11-01 시작일을 포함한 테이블의 모든 레코드는 항상 반환됩니다.왜 그러고 있어?
당신은 가입했다start_date
작은 따옴표로 인해 문자열이 됩니다.backtick
대신
SELECT * FROM `la_schedule` WHERE `start_date` > '2012-11-18';
스테이트먼트에서는 start_date라는 문자열을 시각과 비교하고 있습니다.
start_date가 열일 경우 다음 중 하나여야 합니다.
SELECT * FROM `la_schedule` WHERE start_date >'2012-11-18';
(아포스트로피 없음) 또는
SELECT * FROM `la_schedule` WHERE `start_date` >'2012-11-18';
(백틱 포함)
이게 도움이 됐으면 좋겠다.
이거 먹어봐.
SELECT * FROM la_schedule WHERE `start_date` > '2012-11-18';
솔루션 아래에 있는 조사 결과, 저는 시도해 봤지만, 오히려 효과가 없었습니다.
SELECT * FROM my_table where DATE(start_date) > '2011-01-01';
이것은 언급되지 않았기 때문에 이것을 추가한다.
SELECT * FROM `la_schedule` WHERE date(start_date) > date('2012-11-18');
왜냐면 그게 나한테 효과가 있거든두 비교 값에 date() 함수를 추가합니다.
내 경우 칼럼은 날짜마다 모든 기록을 계속 제공합니다.시간을 포함시킨 것입니다.아래 예를 참조해 주세요.
SELECT * FROM my_table where start_date > '2011-01-01 01:01:01';
타임스탬프를 비교할 경우 다음을 시도해 보십시오.
select * from table where columnInTimestamp > ((UNIX_TIMESTAMP() * 1000) - (1*24*60*60*1000))
여기서 UNIX_TIMESTamp()는 현재 타임스탬프를 제공합니다.여기서 "12460601000"은 1일의 타임스탬프입니다.이것으로, 1일 또는 2일만에 작성된 데이터를 확인할 수 있습니다.
언급URL : https://stackoverflow.com/questions/13448340/how-to-use-greater-than-operator-with-date
반응형
'sourcecode' 카테고리의 다른 글
JPA: 단방향 다대일 및 캐스케이드 삭제 (0) | 2022.11.26 |
---|---|
Firestore onSnapshot() 메서드가 여러 번 실행됩니다. (0) | 2022.11.26 |
SQL - FROM 절의 하위 쿼리에 문제가 있습니다. (0) | 2022.11.26 |
무리를 지어 무리를 지어 분류하는 판다 (0) | 2022.11.26 |
지정된 수의 요소로 목록을 잘라냅니다. (0) | 2022.11.26 |