Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
Доброго дня,
есть проблема... не могу использовать во вьюхе объявленную таблицу, а очень нужно. Как хранимка прокатывает, но хранимку не видит дата интегратор.
Подскажите как сделать вьюху?
Спасибо за любые консультации.

Пример, что должна сделать вьюха:
DECLARE @TAB TABLE ([Priority] [nvarchar](50),
[EventName] [nvarchar](50),
[STime] [datetime],
[ETime] [datetime])
insert into @TAB values
('1 приоритет', 'Событие 1', '2013-12-01 06:00', '2013-12-01 10:00'),
('2 приоритет', 'Событие 2', '2013-12-01 08:00', '2013-12-01 12:00'),
('3 приоритет', 'Событие 3', '2013-12-01 09:00', '2013-12-01 15:00'),
('1 приоритет', 'Событие 4', '2013-12-01 13:00', '2013-12-01 14:00')

select * from @TAB;
5 фев 14, 17:13    [15524156]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
aleks2
Guest
Ту научись table-valued functions писать?
5 фев 14, 17:22    [15524211]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
create view dummy as
select '1 приоритет', 'Событие 1', '2013-12-01 06:00', '2013-12-01 10:00'
union all
select '2 приоритет', 'Событие 2', '2013-12-01 08:00', '2013-12-01 12:00'
........
если сильно уж так хоцца , есть ещше извращения но от версии 2008 и выше
5 фев 14, 17:22    [15524212]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
хочеться =))) у нас 2008 R2
5 фев 14, 17:23    [15524223]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
Gizmor
хочеться =))) у нас 2008 R2

если сильно хоцца - дерзайте..тока выглядит сие уж сильно странно
5 фев 14, 17:24    [15524228]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
не ребят... это только для примера такая простенькая табличка
там реально все сложнее, куча перевертышей и т.д.
5 фев 14, 17:25    [15524242]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
СТЕ - можно во вью использовать
5 фев 14, 17:26    [15524248]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
и там не одна временная таблица, одна на основе другой и т.д.
Запрос страницы на две
5 фев 14, 17:27    [15524250]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
СТЕ не нужно. Запрос работает - выдает информацию. Нужно чтобы выдавала вьюха.
5 фев 14, 17:27    [15524257]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
aleks2
Guest
Maxx
СТЕ - можно во вью использовать

Больной, чтоле?
Multistatement Table-valued Functions
CREATE FUNCTION [ schema_name. ] function_name 
( [ { @parameter_name [ AS ] [ type_schema_name. ] parameter_data_type 
    [ = default ] [READONLY] } 
    [ ,...n ]
  ]
)
RETURNS @return_variable TABLE <table_type_definition>
    [ WITH <function_option> [ ,...n ] ]
    [ AS ]
    BEGIN 
                function_body 
        RETURN
    END
[ ; ]

ишо в 2000-м существовали.

Если система совсем дремучая - можно обернуть потом во вью.
5 фев 14, 17:28    [15524262]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31822
Gizmor
не ребят... это только для примера такая простенькая табличка
там реально все сложнее, куча перевертышей и т.д.
Любую таблицу можно заменить "константой", типа как написал Maxx

Если вам нужно делать какие то вычисления, изменения этих таблиц, тогда пишите функцию.
5 фев 14, 17:29    [15524264]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
Gizmor,
выдавайте, я не против.. я просто привел пример ,чем вашу переменную типа тейбл можно заменить
5 фев 14, 17:29    [15524271]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Gizmor
Member

Откуда:
Сообщений: 54
понял спасибо, буду изучать функции. Спасибо за то что направили на истинный путь
5 фев 14, 17:30    [15524275]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
aleks2
Больной, чтоле?

Дядя Саша - есно больной , у меня и справка есть
Откуда я знаю ,что именно ТС надо... може и ТФ сойдет
5 фев 14, 17:31    [15524288]     Ответить | Цитировать Сообщить модератору
 Re: Использование в представлении объявленных таблиц  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31822
Gizmor
СТЕ не нужно. Запрос работает - выдает информацию. Нужно чтобы выдавала вьюха.
Так CTE во вьюхе.

Да и CTE тут ни при чём, CTE - избыточный, дополнительный синтаксис записи того, что всегда можно было написать как подзапрос (ну, за исключением рекурсивного CTE или использования подзапроса несколько раз).
5 фев 14, 17:31    [15524289]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить