2017-10-26 1 views
1

우편, 도시, 주, 위도, 경도 열 (약 40k 행)이있는 lookup이라는 테이블이 있습니다. 내가하고 싶은 일은 lookup2이라는 새 테이블에 데이터를 복사하는 것입니다.이 테이블에 위도와 경도 열이있는 것보다 PO 유형이 position 인 단일 열이 있습니다.mysql - POINT 열에서 lat/lng로 select에 삽입 하시겠습니까? 40k 행

이 물론 유효하지 않습니다,하지만 당신은 내가 여기 달성하기 위해 노력하고 무엇을 생각 얻어야한다 :

INSERT INTO lookup2 (zip, city, state, position) 
SELECT zip, city, state, PointFromText(POINT(longitude latitude)) FROM lookup; 

가 INSERT INTO SELECT 가능한이 같은인가를? 이 룩업 테이블을 다른 테이블의 새로운 포맷으로 변환하려면 어떻게해야합니까?

답변

1

CONCAT을 사용하는 것 외에도 다른 방법이있을 것입니다. 그러나 이것은 내게 매력적이었고 새로운 테이블에서 ST_X (위치)와 ST_Y (위치)를 사용하면 올바른 lng/우편 번호 별 조회 값 또는 내가 사용한 조회마다

INSERT INTO lookup2 (zip, city, state, position) 
SELECT zip, city, state, PointFromText(CONCAT('POINT (', longitude, ' ', latitude, ')')) as position FROM lookup