2017-12-03 16 views
0

반환 된 거리 값을 삽입하려고합니다. 그러나 SELECT 문에 의해 다음 오류가 발생합니다. -ORA-06550 : 줄 12, 열 9 : PLA : ORA-00936 : 누락 된 식 ORA-06550 : 줄 9, 열 5 : PL/SQL : SQL 문이 무시되었습니다.

ORA-06550 : 줄 12, 열 9 : PL/SQL : ORA-00936 : 누락 된 표현식 ORA-06550 : 줄 9, 열 5 : PL/SQL : SQL 문이 무시되었습니다.

DECLARE 
    l_lat VARCHAR2(100); 
    l_lng VARCHAR2(100); 
    l_postcode VARCHAR2(8) := :P2_POSTCODE; 

BEGIN 
    brian.GEOCODE_GM_XML (l_postcode, l_lat, l_lng); 

    INSERT INTO RESTAURANTS_IMAGES_VIEW (DISTANCE) 
    VALUES 
    (
     SELECT SDO_GEOM.SDO_DISTANCE 
     (a.location, 
     SDO_GEOMETRY(2001, 8307, SDO_POINT_TYPE(l_lat, l_lng, null), null, null), 0.005) distance 
     FROM RESTAURANTS_IMAGES_VIEW a 
    ); 
END; 

여기에 실수가 있습니까?

답변

0

SDO_GEOM.SDO_DISTANCE가 프로 시저이고 쿼리를 기반으로 특정 매개 변수를 제공하려는 브래킷 내부에있는 경우 SELECT를 a.location 앞에 넣으십시오. 에서 restaurants_images_view (거리)에

삽입을 선택 ... .. 당신은 삽입 후 값을 사용할 필요가 없습니다

: 는 또한, 당신이하고 싶은 일은 이것이다.