[가상데이터 생성]
안녕하세요.
워크벤치로 하다보니 동일한 쿼리문에 에러가 나는 경우가 더러 있네요. 구글링으로 보완해가면서 테스트 중입니다.
카페 사용관련 가상데이터 설명 (21:06분) 내용 중에 '1일2회 이상 등록된 전화번호 및 결제일자를 삭제 하는 쿼리문 실행시,
"
" 요런 메시지가 나와서, 구글링을 해보니, 삭제시 자기 테이블을 조회할 수 없기 때문이라고 나와서 수정을 했는데요.

요렇게 하면 제대로 수행이 되는 것 같습니다.
근데 궁금한 건... 강의내용의 쿼리문은
고객의 해당일자 전체를 삭제하는 것 같은데요.
하루 최초 또는 마지막 건수를 남기고 나머지를 삭제하는 쿼리문을 좀 알 수 있을까요?
Answer 1
0
안녕하세요 류재안 님.
우선 제가 사용하는 MariaDB서버 버전을 알려드리면 10.6 및 11.x 입니다. 혹시 버전 문제 소지가 있을 수 있어 말씀드립니다.
요청하신 쿼리는 다음과 같습니다.
DELETE FROM sc_payment
WHERE (usr_phnumber, DATE_FORMAT(pay_dt,'%Y-%m-%d %H'))
IN (
SELECT usr_phnumber, pay_dt FROM (
SELECT usr_phnumber,DATE_FORMAT(pay_dt,'%Y-%m-%d %H') AS pay_dt
,ROW_NUMBER() OVER
(PARTITION BY usr_phnumber
ORDER BY usr_phnumber,DATE_FORMAT(pay_dt,'%Y-%m-%d %H') DESC) AS row_number_
FROM sc_payment
) a
WHERE a.row_number_ != 1
);
위의 쿼리는 년-월-일-시까지만 보았을 때 하루동안 중복된 건들을 처리합니다. 초 단위까지 하시려면 DATE_FORMAT의 시간형식 포맷을 초 단위까지 적절히 기재해 주시면 됩니다.
수행 내용은 동일한 전화번호에 대해 하루 동안 마지막 건수만 남기고 나머지를 삭제하는 쿼리입니다.
유사한 내용이 채널에 있어 URL을 남깁니다.
https://www.youtube.com/watch?v=tqClIDsoa3U&t=50s
조회 대상 행이 적을 때도 Using filesort 제거를 고려해야 하나요?
0
3
1
SYSDATE 입력
0
25
1
테이블 생성 시 PK 및 제약조건 문의
0
31
1
TCL 문의
0
24
1
PK를 AUTO_INCREMENT UUID를 UNIQUE로 하는것에 대해
0
27
1
본질 및 인조 식별자 질문
0
29
1
Jib 빌드가 83%에서 멈추는 문제 해결(windows 사용자)
1
33
1
pk를 auto increment로 하는것에 대해서
0
36
1
슈퍼키 문의
0
37
1
질문있습니다!
0
36
1
트랜잭션 내 Redis I/O 에 대한 궁금한점
1
37
1
3-13 리텐션 과제 제출합니다!
0
63
2
경쟁상태
0
51
1
stmt
0
44
1
실행 통계2 explain analyze 조인 쿼리
0
51
1
3강 인덱스 구조 강의 자료 문의
1
62
1
[해결됨]마지막 강의 내용 수정 화면이 기능을 못하네요.
0
52
1
[스토리 그 자체, 실적 테이블](9:51)max_recursive_iterations
1
693
2
urlcodemap 쿼리 파일 확인요청
1
367
2
[공유][대사와 액션, 회차정보테이블]contents2 생성관련
1
510
2
[주인공과 등장인물의 집합채, 웹소설정보테이블]작가명 생성관련
1
375
1
[주인공과 등장인물의 집합체,웹소설정보테이블]wn_novel테이블 생성
1
317
1
[ERD로 보는 스토리와 테이블이라는 등장인물]태그정보 테이블 설계관련
1
323
1
[공유][워크밴치사용관련]한글깨짐
1
706
1

