I am moving an application from Sybase to Oracle. I have about 2 hours experience with Oracle so I need some help identifying what the issue is with this SQL. Please don't beat me up to much…
I am getting the following error with this SQL...
Code:
========================== ERROR ===============================
ORA-06550
PLS-00103
[Begins with the first select]
========================== END ERROR ===========================
Code:
========================== CODE PL/SQL ==========================
DECLARE
lng FLOAT;
lat FLOAT;
distance NUMBER := 500;
zip VARCHAR(64) := '19464';
BEGIN
SELECT (((SELECT DISTINCT a.LONGITUDE FROM W6ADMIN.W6ZIPDATA a WHERE a.zipcode=zip)*180)/3.14) INTO lng;
SELECT (((SELECT DISTINCT a.LATITUDE FROM W6ADMIN.W6ZIPDATA a WHERE a.zipcode=zip)*180)/3.14) INTO lat;
SELECT a.*,
POWER((POWER((lat- (W6ADMIN.W6ZIPDATA.LATITUDE*180)/3.14),2)+POWER((lng-(W6ADMIN.W6ZIPDATA.LONGITUDE*180)/3.14),2)),.5) AS Distance
FROM W6ADMIN.W6ENGINEERS a, W6ADMIN.W6ZIPDATA
WHERE RTRIM(a.POSTCODE)=RTRIM(W6ADMIN.W6ZIPDATA.zipcode) AND
(POWER((POWER((lat-(W6ADMIN.W6ZIPDATA.LATITUDE*180)/3.14),2)+POWER((lng-(W6ADMIN.W6ZIPDATA.LONGITUDE*180)/3.14),2)),.5)) <= distance
ORDER BY POWER((lat-(W6ADMIN.W6ZIPDATA.LATITUDE*180)/3.14),2)+POWER((lng-(W6ADMIN.W6ZIPDATA.LONGITUDE*180)/3.14),2);
END;
========================== END CODE PL/SQL ======================
Thanks in advance for your help.