programing

SQL을 이용하여 지난 24시간 동안의 레코드를 선택하는 방법은?

yellowcard 2023. 10. 22. 19:59
반응형

SQL을 이용하여 지난 24시간 동안의 레코드를 선택하는 방법은?

나는 찾고 있습니다.where지난 24시간 동안의 기록을 검색하는데 사용할 수 있는 조항?

MySQL:

SELECT  *
FROM    mytable
WHERE   record_date >= NOW() - INTERVAL 1 DAY

SQL Server:

SELECT  *
FROM    mytable
WHERE   record_date >= DATEADD(day, -1, GETDATE())

Oracle:

SELECT  *
FROM    mytable
WHERE   record_date >= SYSDATE - 1

PostgreSQL:

SELECT  *
FROM    mytable
WHERE   record_date >= NOW() - '1 day'::INTERVAL

Redshift:

SELECT  *
FROM    mytable
WHERE   record_date >= GETDATE() - '1 day'::INTERVAL

SQLite:

SELECT  *
FROM    mytable
WHERE   record_date >= datetime('now','-1 day')

MS Access:

SELECT  *
FROM    mytable
WHERE   record_date >= (Now - 1)
SELECT * 
FROM table_name
WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)

MySQL:

SELECT * 
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 24 HOUR)

간격은 연도, 월, 일, 시간, 분, 초 단위일 수 있습니다.

예를 들어, 지난 10분동안

SELECT * 
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 10 MINUTE)

SQL 2005/2008에서 지정되지 않은 SQL

SELECT yourfields from yourTable WHERE yourfieldWithDate > dateadd(dd,-1,getdate())

2008년 정확도가 향상된 날짜 유형을 사용하는 경우, UTC 시간을 내부적으로 UTC 호출로 전환하는 경우에도 동일하게 새 sysdate time() 기능을 사용합니다.

필드 유형이 타임스탬프라고 가정할 때, 포스트그레스에서:

date_field >가 있는 테이블에서 *를 선택합니다(이제 () - 간격 '24시간').

고려된 타임스탬프가 UNIX 타임스탬프인 경우 먼저 UNIX 타임스탬프(예: 1462567865)를 mysql 타임스탬프 또는 데이터로 변환해야 합니다

SELECT * FROM `orders` WHERE FROM_UNIXTIME(order_ts) > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
select ...
from ...
where YourDateColumn >= getdate()-1
SELECT * 
FROM tableName 
WHERE datecolumn >= dateadd(hour,-24,getdate())

안녕하세요. 원래 게시물에서 많은 시간이 지났지만 비슷한 문제가 발생하여 공유하고 싶습니다.

YYYY-MM-DD hh:mm:ss 형식의 datetime 필드를 받았는데 하루 종일 접속하고 싶어서 해결책을 알려드립니다.

함수 DATE(), MySQL: 날짜 또는 날짜 시간 식의 날짜 부분을 추출합니다.

SELECT * FROM `your_table` WHERE DATE(`your_datatime_field`)='2017-10-09'

이것으로 나는 오늘 모든 행 레지스터를 얻습니다.

누구에게나 도움이 되었으면 좋겠습니다.

SQL Server에서(지난 24시간 동안):

SELECT  *
FROM    mytable
WHERE   order_date > DateAdd(DAY, -1, GETDATE()) and order_date<=GETDATE()

Oracle의 경우(지난 24시간 동안):

SELECT  *
FROM    my_table
WHERE   date_column >= SYSDATE - 24/24

어떤 이유로든 미래 날짜가 표시된 행이 있을 경우 다음과 같이 사용할 수 있습니다.

SELECT  *
FROM    my_table
WHERE   date_column BETWEEN (SYSDATE - 24/24) AND SYSDATE

제 경우에는 누군가 이것이 필요할 수도 있습니다.24시간 후에 레코드를 선택하려면 다음을 변경할 수 있습니다.>=로.<=

예를 들어,MySQL에서 다음을 수행합니다.

SELECT  *
FROM    mytable
WHERE   record_date <= NOW() - INTERVAL 1 DAY

언급URL : https://stackoverflow.com/questions/1888544/how-to-select-records-from-last-24-hours-using-sql

반응형