>  Q&A  >  본문

MySQL/Any SQL의 Varchar/Text 열에서 중복된 이름을 계산하는 방법

상황은 다음과 같습니다. 다음과 같은 CSV 파일이 있습니다.

으아아아

내가 해야 할 일은 Python 함수에서 이 CSV 파일을 열고 공백 등에 대한 일부 처리를 수행하는 것입니다.

그런 다음 SQL 데이터베이스에 업로드해야 합니다(원하는 것은 무엇이든 상관없지만 MySQL을 선택했습니다). 이는 문제가 되지 않습니다.

질문

내 주요 문제는 (내 도전 과제에 따라) 목록의 모든 영화에 배우가 등장하는 횟수를 계산하는 쿼리를 만들어야 한다는 것입니다. 따라서 이 경우 쿼리는 다음과 같아야 합니다.

으아아아

보시다시피 LIKE나 CONTAINS로 검색할 수 있는 이름이 없습니다. 그래서 내가 무엇을해야하니? CSV에는 각 영화의 출연자 목록에 배우가 두 명 이상 있고 이를 데이터베이스의 varchar 또는 텍스트 유형으로 저장하므로 행당 배우가 여러 명 있습니다.

아니면 배우와 영화를 연관시키기 위해 외래 키를 사용하여 또 다른 테이블을 만들어야 하나요? 아니면 MySQL에서는 이 작업을 수행할 수 없지만 다른 SQL에서는 가능할 수도 있습니까?

P粉464113078P粉464113078405일 전537

모든 응답(1)나는 대답할 것이다

  • P粉080643975

    P粉0806439752023-09-11 16:09:29

    성능 효율적인 것을 찾고 있다면 데이터를 분할하고(영화, 배우, 크레딧 총 3개의 테이블 생성) 출연진과 크레딧을 사용하여 배우를 영화와 연결한 다음 조인을 사용하여 간단한 SQL을 작성해야 합니다. 아래에 표시:

    으아악

    또한 https://sebhastian.com/mysql-split-string/을 사용하거나 psql/plsql 및 저장 프로시저를 사용하여 다른 방법으로 수행할 수도 있습니다. 가능하다면 데이터를 분할하겠습니다.

    건배.

    회신하다
    0
  • 취소회신하다