쿼리 질문드립니다. MSSQL 0 3 3,700

by 튼실맨 [SQL Query] MSSQL [2024.02.22 18:58:46]


SELECT 
A.CompanyType,
A.UserId,
A.EmpName
FROM VW_USER A
WHERE A.UserId IN (SELECT USER_ID FROM user_like WHERE contents_id = '10399')

현재 이렇게 사용자 정보를 불러오고 있습니다.

여기서 저 contents_id의 값이 여러개일 경우 어떻게 쿼리를 수정해야 할까요??

 

by 마농 [2024.02.22 21:33:53]
SELECT A.CompanyType
     , A.UserId
     , A.EmpName
  FROM VW_USER A
 WHERE A.UserId IN (SELECT USER_ID
                      FROM user_like
                     WHERE contents_id IN ('10399', '10398', '10397')
                    )
;

 


by 튼실맨 [2024.02.26 10:59:14]

그러면 

SELECT A.CompanyType

     , A.UserId

     , A.EmpName

  FROM VW_USER A

 WHERE A.UserId IN (SELECT USER_ID

                      FROM user_like

                     WHERE contents_id IN ('10399', '10398', '10397')

                    )

이 쿼리에서 결과값이 여러개 나오잖아요?

예를 들어 영상 제목도 출력하고 싶은데

영상 제목 유저1 정보

test -      유저1 정보

test -      유저2 정보

test -      유저3 정보

이렇게 하려면 어떻게 하나요?? 영상 제목은 컨텐츠 테이블에 따로 있습니다. 저 컨텐츠 id 값도 컨텐츠 테이블에 있구요


by 마농 [2024.02.26 11:21:04]
SELECT a.companytype
     , a.userid
     , a.empname
     , b.contents_id
     , b.contents_title
  FROM vw_user a
 INNER JOIN user_like b
    ON a.userId = b.user_id
 WHERE b.contents_id IN ('10399', '10398', '10397')
 ORDER BY b.contents_id, a.userid
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입