Singing Samuel
30
2019-08-29 13:41:26
2
338

[SQL] INSERT 시 모든 특정값에 적용하고 싶습니다.


안녕하세요. 항상 여기서 신세만 지고있는 초보 개발자 입니다.

다름이 아니라 이번에 회사 작업으로 쿼리 작성중에 어려운 부분이 있어 여쭤보고자합니다.


이번 동작해야할 테이블 구조는 아래와 같습니다.


CORP_IDUSER_IDMENU_IDPERMIT_CDINS_USER_IDINS_USER_DTM
회사코드유저 ID메뉴 ID권한 코드입력자 ID입력날짜

목적은 CORP_ID와 USER_ID에 모든 MENU_ID 를 추가해주고 싶습니다.

각 회사별/유저별로 MENU_ID를 추가하는 것 입니다.

회사ID 유저ID 는


SELECT DISTINCT CORP_ID, USER_ID
FROM [테이블]

로 가져왔습니다.


INSERT INTO [테이블] (CORP_ID, USER_ID, MENU_ID, PERMIT_CD, INS_USER_ID, INS_USER_DTM)

VALUES ( 회사ID,유저ID,'F22805','00001000','ADMIN',SYSTIMESTAMP') 


를 넣고 싶은데 SELECT DISTINCT 로 가져온 회사ID와 유저 ID 를 넣어줄  수 있는 방법이 있을까요?


항상 고수님들의 친절한 답변 감사합니다!





1
  • 답변 2

  • NoProblem
    46
    2019-08-29 13:53:05

    INSERT INTO [테이블] (CORP_ID, USER_ID, MENU_ID, PERMIT_CD, INS_USER_ID, INS_USER_DTM)

    SELECT

    A.CORP_ID,

    A.USER_ID,

    'F22805',

    '00001000',

    'ADMIN',

    SYSTIMESTAMP

    FROM (

    SELECT DISTINCT CORP_ID, USER_ID FROM [테이블]

    ) A;

    이렇게 하면 되지 않을까요?

  • Singing Samuel
    30
    2019-08-29 14:02:29

    /NoProblem 님

    헉... Insert 문에 SELECT를 걸수있을거라고 생각못했습니다. 초보적인 질문에도 친ㄴ절하게 답해주셔서 감사합니다!

  • 로그인을 하시면 답변 을 등록할 수 있습니다.