쿼리 작성에 도움이 필요합니다.MySQL 쿼리 : GROUP_CONCAT
두 개의 테이블이 있습니다. 하나는 jobs_certs라고하고 다른 하나는 users_certs라고합니다.
jobs_certs 테이블에는 작업을 신청하는 데 필요한 인증서가 들어 있습니다. 필요한 각 인증서에는 필요한 인증서가 게시 된 작업을 나타내는 job_id와 해당 인증서에 첨부 된 ID를 나타내는 cert_id가있는 자체 행이 있습니다.
users_certs 테이블에는 사용자가 보유한 모든 인증서가 포함되어 있습니다. 각 인증서에는 사용자의 ID를 나타내는 uid와 사용자가 소유 한 인증서의 ID를 나타내는 cert_id가있는 자체 행이 있습니다.
사용자가 작업에 필요한 모든 인증서를 보유하고 있는지 확인해야합니다. 그래서 다음과 같이 시도했습니다.
SELECT GROUP_CONCAT(cert_id) as certs, uid
FROM users_certs
HAVING certs = (SELECT GROUP_CONCAT(cert_id) FROM jobs_certs WHERE job_id = 6)
그러나 결과가 다시 나타나지 않습니다. 어떻게 그런 일을해야합니까?
미리 감사드립니다.
표 구조를 영어로 설명하는 대신 [sample code] (http://sscce.org/)를 CREATE 문 형태로 사용하십시오. 훨씬 더 명확 해. 또한 샘플 데이터 (INSERT 문)와 원하는 결과가 도움이됩니다. – outis