오늘 쓸 건 거창한 건 아니고 일할 때 종종 쓰는 쿼리를 공유하려고 한다.
|
1
2
3
4
|
SELECT ','||COLUMN_NAME
FROM ALL_TAB_COLS
WHERE TABLE_NAME = '테이블명'
ORDER BY COLUMN_ID
|
cs |
오라클에서 ALL_TAB_COLS 는 현재 유저가 접근 가능한 테이블의 컬럼 정보를 조회할 수 있는 테이블이다.
INSERT 문이나 UPDATE 문 작성할 때 이 쿼리를 실행하고 결과를 복사 붙여 넣기 하면 쿼리를 빨리 만들 수 있다.
콤마를 앞에 붙이는 이유는 뒤에 붙이면 밑에 컬럼을 추가할 때 기존 마지막 컬럼에 콤마를 빠트리는 실수할 가능성이 있다. 그리고 추가하지 않더라도 삭제하는 경우에도 CTRL+D 한 번만 해주면 되서 편하다.
|
1
2
3
4
|
SELECT ','||COLUMN_NAME||' = #{'||COLUMN_NAME||'}'
FROM ALL_TAB_COLS
WHERE TABLE_NAME = '테이블명'
ORDER BY COLUMN_ID
|
cs |
UPDATE 할 때는 이런 식으로 변형해서 사용하면 된다.
'||' 합성 연산자는 문자열을 붙여준다.
오라클 공식문서:
https://docs.oracle.com/database/121/REFRN/GUID-F218205C-7D76-4A83-8691-BFD2AD372B63.htm#REFRN20277
'IT > SQL' 카테고리의 다른 글
| [프로그래머스_SQL] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (0) | 2023.02.15 |
|---|---|
| [프로그래머스_SQL] 자동차 대여 기록에서 장기/단기 대여 구분하기 (0) | 2023.02.15 |
| [프로그래머스] SQL 자동차 대여 기록 별 대여 금액 구하기 (0) | 2023.02.08 |
| [프로그래머스_SQL] 상품을 구매한 회원 비율 구하기 (0) | 2022.11.20 |
| conflict 난 것도 아닌데 merge request 안 될 때 (Validate branches Another open merge request already exists for this source branch: !39 ) (0) | 2022.11.19 |