반응형
어떻게 하면 이 스크립트를 수정하여 레코드를 표시하지 않고 삭제할 수 있습니까?
WITH CTE AS (
SELECT
user_id,
ip_addr,
MIN(reg_date) AS min_reg_date
FROM
user_info
GROUP BY
ip_addr
HAVING
COUNT(*) > 1
)
SELECT
users.id
FROM
users
JOIN user_info
ON users.id = users_info.user_id
JOIN CTE
ON user_info.ip_addr = CTE.ip_addr
AND user_info.reg_date > CTE.min_reg_date;
user_info 테이블:
CREATE TABLE `user_info` (
`user_id` int(11) UNSIGNED NOT NULL,
`ip_addr` varchar(255) DEFAULT NULL,
`user_agent` varchar(255) DEFAULT NULL,
`reg_date` timestamp NOT NULL DEFAULT current_timestamp()
)
사용자 테이블:
CREATE TABLE `users` (
`id` int(11) UNSIGNED NOT NULL,
`first_name` varchar(50) NOT NULL,
`last_name` varchar(50) NOT NULL,
`nickname` varchar(50) NOT NULL,
`email` varchar(100) NOT NULL,
`password` varchar(255) NOT NULL,
`avatar` varchar(255) NOT NULL,
`group_id` int(11) UNSIGNED DEFAULT NULL
)
EXISTS 및 IN 키워드를 사용해 보았지만 오류가 "DELETE FROM..."에 가깝다고 표시됩니다. 다른 것을 변경해야 합니까? 도와주세요.
언급URL : https://stackoverflow.com/questions/75348045/how-can-i-modify-this-script-to-delete-the-records-instead-of-showing-them
반응형
'programing' 카테고리의 다른 글
일치하지 않는 변형 숨기기 (0) | 2023.10.18 |
---|---|
initiale mysql window api 함수 CreateProcessA 를 사용합니다. (0) | 2023.10.18 |
MySQL 및 Python으로 데이터베이스가 자동으로 업데이트되지 않음 (0) | 2023.10.18 |
0으로 구분: C 및/또는 C++에 정의되지 않은 행동 또는 구현? (0) | 2023.10.18 |
두 unint8_tas unint16_t 결합 (0) | 2023.10.18 |