programing

특정 날짜가 있는 레코드를 선택하는 MySql 쿼리

elecom 2023. 10. 5. 21:13
반응형

특정 날짜가 있는 레코드를 선택하는 MySql 쿼리

그래서 지금 내 사이트에 검색한 날짜를 이렇게 저장하고 있습니다.

2011-06-07 21:44:01

이제 쿼리를 실행하여 날짜가 무엇과 동일하지만 연도/월 및 일만 고려된 모든 값을 선택하려고 합니다.

mysql_query("SELECT tag from tags WHERE date = '2011-06-07'");

하지만 정확한 시간(시분초)을 고려하지 않아야 하는데, 어떻게 할 수 있을까요?

당신은 그 기능을 사용할 수 있습니다.

SELECT `tag`
  FROM `tags`
 WHERE DATE(`date`) = '2011-06-07'

하지만 더 나은 성능을 위해서는...

  WHERE `date` 
BETWEEN '2011-06-07'
    AND '2011-06-07 23:59:59'

작동해야 합니다.

mysql_query("SELECT tag from tags WHERE date LIKE '2011-06-07%'");
mysql_query("SELECT tag from tags WHERE DATE(`date`) = '2011-06-07'");

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_date

곧 게시할 답변이 이미 늦었다는 것을 알고 있지만, 같은 문제를 경험할 수 있는 사람에게 도움이 될 수 있습니다.

사용한 경우:

SELECT * 
FROM tablename 
WHERE dateCol >= date("2017-11-01") 
AND dateCol < date("2017-11-01") + INTERVAL 1 DAY;

DATE() 기능을 사용하는 것보다 빠릅니다.

저장 프로시저를 사용하는 경우 날짜를 문자열로 전달하고 대신 인수로 제공할 수 있습니다.("2017-11-01")

언급URL : https://stackoverflow.com/questions/6273361/mysql-query-to-select-records-with-a-particular-date

반응형