반응형
다음과 같은 LoginTime 테이블이 있습니다.
id | user_id | datetime
1 | 1 | 2011-01-17 18:51:05
2 | 1 | 2011-01-18 18:51:05
3 | 1 | 2011-01-19 18:51:05
4 | 2 | 2011-01-19 18:51:05
user_id = 1
의 마지막 레코드를 삭제하고 싶습니다. 사용자의 마지막 기록은 datetime
으로 인식 할 수 있습니다.
하나의 쿼리로 어떻게 할 수 있습니까?
해결 방법
user_id (예 : WHERE user_id = 1)로 테이블을 필터링 한 다음 시간별로 정렬 (예 : ORDER BY datetime) 한 다음 쿼리를 한 항목 (예 : LIMIT 1)으로 제한하고이 쿼리의 결과를 삭제해야합니다. 마지막에 다음과 같은 쿼리를 얻을 수 있습니다.
DELETE FROM LoginTime WHERE user_id=1 ORDER BY datetime DESC LIMIT 1
참조 페이지 https://stackoverflow.com/questions/4714239
반응형
'MySql' 카테고리의 다른 글
MySQL How does MySQL process ORDER BY and LIMIT in a query? (0) | 2020.10.22 |
---|---|
MySQL에서 ID가 유사한 행에 대한 열 곱셈의 합계 (0) | 2020.10.22 |
MySQL : 시간 간 비교 (0) | 2020.10.21 |
MySQL의 열 이름 "order"에 대한 대안 (0) | 2020.10.21 |
MySQL 하위 쿼리없이 MySQL의 GROUP BY보다 ORDER BY에 우선 순위 부여 (0) | 2020.10.21 |
댓글