반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Next.js
- MSsql
- submit
- centos7
- FCM
- security
- mysql
- yona
- SpringBoot
- MariaDB
- Maven
- Push
- docker
- Java
- node.js
- mybatis
- ajax
- pwa
- NextJS
- jenkins
- popup
- git
- spring3
- Eclipse
- config
- jquery
- rocky9
- nodejs
- javascript
- PM2
Archives
- Today
- Total
ふたりで
MSSQL SELECT 결과로 DELETE 하기. 본문
728x90
반응형
SMALL
# MSSQL에서 지정된 조건을 기반으로 DELETE 쿼리를 작성하는 방법이다.
MSSQL에서는 다중 열을 이용한 IN 조건이 지원되지 않으므로, 대신 EXISTS를 사용할 수 있다.
아래는 Mart_User 테이블에서 mart_code와 emp_code 값이 Auth_Mart테이블의 user_mart와 user_emp 값과 일치하고, 추가로 user_auth 값이 'C'인 행을 삭제하는 쿼리이다.
DELETE FROM Mart_User
WHERE EXISTS (
SELECT 1
FROM Auth_Mart
WHERE Auth_Mart.user_mart = Mart_User.mart_code
AND Auth_Mart.user_emp = Mart_User.emp_code
AND Auth_Mart.user_auth = 'C'
);
이 쿼리는 다음과 같은 단계로 동작한다.
- EXISTS 서브쿼리를 사용하여 Auth_Mart 테이블에서 user_mart와 user_emp 값이 Mart_User 테이블의 mart_code와 emp_code 값과 일치하고 user_auth 값이 'C'인지를 확인한다.
- EXISTS 조건이 참인 경우, Mart_User 테이블에서 해당 행을 삭제한다.
728x90
반응형
SMALL
# 삭제될 행을 미리 확인하기 위해 아래와 같이 SELECT 쿼리를 사용할 수 있다.
SELECT * FROM Mart_User
WHERE EXISTS (
SELECT 1
FROM Auth_Mart
WHERE Auth_Mart.user_mart = Mart_User.mart_code
AND Auth_Mart.user_emp = Mart_User.emp_code
AND Auth_Mart.user_auth = 'C'
);
728x90
반응형
LIST
'Other' 카테고리의 다른 글
rocky9linux + nginx + tomcat or nodejs 연동 시 error log "Permission denied" 발생 시 참고. (0) | 2024.12.12 |
---|---|
windows11 특정 port를 사용중인 프로그램 찾기 (0) | 2024.05.21 |
yona GIT 활용 참고. (0) | 2024.01.30 |
SQL 테이블내 데이터의 합으로 일괄 업데이트 (0) | 2024.01.10 |
MSSQL 날짜를 문자로 변환... (1) | 2023.12.26 |
Comments