Я использую Oracle Oracle Developer, инструмент создания представления. У меня есть функция с именем LastNameFirst, которую я хочу использовать, чтобы реорганизовать имя / фамилию клиента так, чтобы фамилия была первой.
SELECT SALE.SaleID,SALE.SaleDate, CUSTOMER.LastNameFirst(LastName,FirstName),
SALE_ITEM.SaleItemID,SALE_ITEM.ItemID,ITEM.ItemDescription, ITEM.ItemPrice
FROM SALE_ITEM
INNER JOIN SALE on SALE.SaleID = SALE_ITEM.SaleID
INNER JOIN ITEM on ITEM.ItemID = SALE_ITEM.ItemID
INNER JOIN CUSTOMER on CUSTOMER.CustomerID = SALE.CUSTOMERID;
Я получаю ошибку:
ORA-00904: «ЗАКАЗЧИК». «LASTNAMEFIRST»: неверный идентификатор
Как мне вызвать функцию в этой части моего оператора select? Я не могу найти какие-либо примеры функций, вызываемых в операторах выбора, где используются объединения, кроме как каким-либо образом использовать «перекрестное применение» или «внешнее применение». Я понимаю (я думаю), что синтаксис
SELECT 'tableName'.'columnName'
и я знаю, что моя функция не является столбцом, и именно поэтому я получаю эту ошибку. Но я действительно не уверен, как настроить код. Я попытался изменить его на что-то вроде:
SELECT SALE.SaleID,SALE.SaleDate,CUSTOMER.LastName, CUSTOMER.FirstName AS LastNameFirst(LastName,FirstName),SALE_ITEM.SaleItemID,SALE_ITEM.ItemID,ITEM.ItemDescription, ITEM.ItemPrice
Но ничего подобного у меня тоже не получалось. Буду признателен за любую помощь, которую кто-нибудь может мне дать