2017-11-06 4 views
1

테이블에 각 셀에 여러 값이 들어있는 필드가있는 MYSQL 데이터베이스가 있습니다. 이 값은 다른 테이블의 외래 키입니다.mysql 데이터베이스 여러 값을 포함하는 필드를 처리하는 방법

inspection_date :

  • siteID (기본 키)
  • 직원 ID 외래 키
  • inspectionDate

emplyee 필드가 여러 개의 값이 하나 이상의 원인이 될 것이다 직원이 검사를 수행했습니다.

직원

  • 직원 ID (기본 키)
  • employeeName

누군가가 나를 도울 수있는 것은 사용하는 선택 쿼리

MySQL의 :

$query_site_location =$wpdb->get_results("select DISTINCT 
         l.siteID, 
         l.locationName, 
         n.inspectionDate, 
         s.employeeID 
         from site_location l 
         LEFT  
         JOIN inspection_info n 
         on l.siteID = n.siteID 
         LEFT 
         JOIN employee s 
         on n.employeeID = s.employeeID"); 

결과는이 관계 우리는 양자의 기본 키를 처리하기 위해 제 엔티티를 생성해야 대다 첫 번째 행

+2

표준 솔루션 "처리"생 문제는 하나의 셀에 여러 값을 저장하지 않도록 데이터 테이블과 관계를 디자인하는 것입니다. 항상 나쁜 디자인이며 많은 것을 만듭니다. 많은 문제. 데이터 표 정상화 –

+0

어떤 데이터를 가져 오시겠습니까? – purush

+2

"inspection_info"엔티티와 "employee"엔티티 사이에 일대 다 관계가있는 것 같습니다. 하나의 컬럼에 여러 개의 값을 저장하는 것은 엔티티 - 관계 모델링 및 관계형 데이터베이스 이론에 직면합니다. 하지 마. https://stackoverflow.com/questions/20220390/how-to-model-one-to-many-relationship-in-database – spencer7593

답변

0

A의 직원 (6-7) 분야에 있어야 테이블.

직원 :

employeeID(PRIMARY KEY) 
employeeName 

inspection_info :

inspectionID(PRIMARY KEY) 
inspectionDate 
employeeID 

inspection_site :

inspectionID(PRIMARY KEY) 

siteID(PRIMARY KEY)