Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема обращение к своей встроенной функции в запросе... (число прочтений - 1851 )
g00d
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
обращение к своей встроенной функции в запросе...
20. Июня 2008 :: 19:58
Печать  
не пойму в чем дело
есть такой запрос
Код
Выбрать все
CREATE FUNCTION dbo.GetAverageSales ()
 RETURNS @retCount TABLE (days char(16))
 BEGIN
..........................
   RETURN
 END

SELECT
  СпрН.ID [Товар $Справочник.Товары]
  ,dbo.GetAverageSales()  as Расчет
FROM
   $Справочник.Товары СпрН
 



выдает ошибку
State 42S02, native 208, message [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'dbo.GetAverageSales'.

причем
SELECT * FROM dbo.GetAverageSales()
работает
что не так?
  
Наверх
 
IP записан
 
g00d
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: обращение к своей встроенной функции в запросе
Ответ #1 - 20. Июня 2008 :: 20:49
Печать  
изменил на
Код
Выбрать все
SELECT
  СпрН.ID [Товар $Справочник.Товары]
  ,Расчет= (select * FROM  dbo.GetAverageSales ())
,dbo.GetAverageSales()  as Расчет
FROM
   $Справочник.Товары СпрН
 


ошибка стала
State 42000, native 170, message [Microsoft][ODBC SQL Server Driver][SQL Server]Line 19: Incorrect syntax near '.'.
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: обращение к своей встроенной функции в запросе
Ответ #2 - 22. Июня 2008 :: 17:29
Печать  
Читал 3 раза, нифига не понял
Какая задумка-то?
Вот пример использования функции:
|insert into " + ВремТаблица + " values (dbo.sp_tohex(@rank, 6), @id, 1)
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: обращение к своей встроенной функции в запросе
Ответ #3 - 23. Июня 2008 :: 03:10
Печать  
А ты вооюще как себе это представляешь?

Ты пытаешся табличную функцию представить в виде одного поля выборки? Это что за поле то будет? Разве SQL поддерживает такой тип поля?
  
Наверх
ICQ  
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: обращение к своей встроенной функции в запросе
Ответ #4 - 23. Июня 2008 :: 19:31
Печать  
Так можно использовать только скалярную функцию, таблицную (а приведенная в (0) именно табличная) надо использовтаь как подзапрос или масив, т.е. в условии (IN) или в источнике (FROM, хотя тут не уверен что сработает).
  
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать