名前が与えられたときに顧客が行った予約を出力するSQL関数を作成しようとしています。顧客名は CLIENTS.FNAME CLIENTS.MNAME CLIENTS.LNAME というテーブルにあり、id-foreign キーによって検索された予約には、「値が多すぎます」というエラーを示す関数のコードがあります。実行する必要があるかもしれません。ループか何かで?
create or replace FUNCTION cl_reserv(clName VARCHAR2)
RETURN RESERVATIONS%ROWTYPE
IS
resRecord RESERVATIONS%ROWTYPE;
BEGIN
SELECT RESID,STARTDATE,ENDDATE,ADDINFO INTO resRecord
FROM RESERVATIONS INNER JOIN CLIENTS ON RESERVATIONS.CLIENTID=CLIENTS.CLIENTID
WHERE clName IN (FNAME,MNAME,LNAME);
RETURN resRecord;
END;