Question

Hi I have select like this

SELECT
  ADDRESSES.PHONENUMBER1,
  ADDRESSES.PHONENUMBER2,
  FIRMS.NAME,
  ADDRESSES.COUNTRY,
  ADDRESSES.EMAIL,
  ADDRESSES.RECIPIENT
FROM ADDRESSES
INNER JOIN FIRMS
ON FIRMS.RESIDENCEADDRESS_ID = ADDRESSES.ID
WHERE (replace(REPLACE(ADDRESSES.PHONENUMBER1, ' ', ''), '-', '') LIKE '%123456789%')
OR (replace(REPLACE(ADDRESSES.PHONENUMBER1, ' ', ''), '-', '') LIKE '%123456789%')

And I would like make a procedure and the result be

name, address, email,

also need help with replace 123456789 wit correct ask

thank you

Was it helpful?

Solution

..this works, but if someone knew something that could be improved. Let me know

create or replace PROCEDURE TEST
(
in_ANI in VARCHAR2,
out_all out VARCHAR2
)


AS
    fName VARCHAR2 (40) := '';
    aemail VARCHAR2 (40) := '';


BEGIN

out_all := '';

  SELECT FIRMS.NAME, ADDRESSES.EMAIL
  into fName, aemail
  FROM ADDRESSES
  INNER JOIN FIRMS
  ON FIRMS.RESIDENCEADDRESS_ID = ADDRESSES.ID
  WHERE (replace(REPLACE(ADDRESSES.PHONENUMBER1, ' ', ''), '-', '') LIKE '%'||in_ANI||'%')
  OR (replace(REPLACE(ADDRESSES.PHONENUMBER2, ' ', ''), '-', '') LIKE '%'||in_ANI||'%');


out_ALL := 'Firm:' || fName || '|Email:' || aemail;

    exception
      when TOO_MANY_ROWS then 
        out_ALL := ('Firm:Too Many firms for this phone');

      when NO_DATA_FOUND then 
        out_ALL := ('Firm:No firms for this number');

      when others then 
        raise_application_error(-20011,'Unknown Exception');


END TEST;
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top