긴 CSV 테이블을 가져 와서 효율성을 위해 두 테이블로 변환하는 가장 좋은 방법에 대한 질문이 있습니다. 매우 축소 된 버전이지만이 용도로 적합합니다.큰 데이터 가져 오기 변환
각 행은 고유 한 레코드이지만 처음 세 열은 많은 양의 행에 대해 매우 일관된 데이터로 구성됩니다.
내가이 데이터를 관리 할 수있는 가장 좋은 방법을 생각하는 두 개의 테이블을 구축하는 것이 었습니다 :최초의 자동 증가 id 필드와 처음 세 열의에 의해 그룹 인.
이렇게하면 내 데이터의 주요 그룹을 요약 할 수 있습니다.
두 번째 테이블은 모든 행 이었지만 모든 반복 된 데이터를 보유하는 대신 첫 번째 테이블로 가져올 때 자동 증가 ID 필드와 함께 변수 데이터 열 d, e 및 f 만 보유합니다.
제 질문은 실제로 첫 번째 테이블에서 ID를 얻는 방법입니다. ID를 찾고 다시 두 번째 테이블에 삽입하는 유일한 방법입니다.
a,b,c,d,e,f
09/02/2013,A1,1,18503112043123,11,2.1219
09/02/2013,A1,1,44102576116476,73,14.0817
09/02/2013,A1,1,66918345446536,134,25.8486
09/02/2013,A1,2,62009507978229,10,1.929
09/02/2013,A1,2,92278593945574,55,10.6095
09/02/2013,B1,1,50474606002324,90,17.361
09/02/2013,B1,1,59697581427675,7,1.3503
09/02/2013,B1,1,86298530583467,51,9.8379
09/02/2013,B1,2,34885481077847,80,15.432
09/02/2013,B1,2,25479347211047,164,31.6356
09/02/2013,B1,3,56270556524425,6,1.1574
09/02/2013,C1,1,57680166803098,24,4.6296
09/02/2013,C1,1,72778510788287,77,14.8533
09/02/2013,C1,1,26084111080146,140,27.006
09/02/2013,C1,1,31435464483578,361,65.5937
09/02/2013,C1,2,29457756254473,492,89.3964
09/02/2013,C1,2,68414218104066,293,53.2381
편집
나는 마음에 두 가지 질문이 : 1 :에 의해 테이블 그룹에서 c를, 자동 증가를 parent_table 선택 널 (null), A, B에 삽입을 가지고 내 부모 테이블 , b, c
- 내 모든 데이터 행이지만 상위 테이블의 해당 자동 증분 ID를 포함하는 내 하위 테이블.
나는
이
OK - 그래서 내 최선의 방법은 MySQL을 직접하지 않는 PHP를 통해 이것을하는 것입니다. 이것은 행 단위로 데이터를 반복하는 것을 의미하지 않습니다. – user1479891
@ user1479891 mysql의 last_insert_id()도 있습니다. 업데이트 된 답변을 참조하십시오. –