[MS SQL] вопрос

Slavaga

Есть запрос, который возвращает таблицу 1х1 на основании переменной @N.
SELECT LastName + ' ' + FirstName + ' ' + Patronymic
FROM Customers
LEFT OUTER JOIN Persons ON Persons.PersonID = Customers.WomanID
WHERE CustomerID = @N
Этот запрос часто используется в других SELECT'ах. Например
SELECT <ЗАПРОС>, CustomerID FROM Customers
получится таблица ФИО, ID.
Вопрос заключается в следующем: Как можно сократить запись? Чтобы не писать каждый раз весь целиком этот запрос, а вызывать че-то типа
SELECT ZAPROS(CustomerID CustomerID FROM Customers

Solnce18

Использовать хранимые процедуры.

Slavaga

А пример запроса можно?

otvertka07

чувак, ты жжош
тебе же сказали, напиши хранимую процедуру, и вызывай её с параметрами, а ты что спрашиваешь? ты не можешь запрос от хранимой процедуры отличить? иди ботай книжку (F1 нажми в query analyzere)

Slavaga

Наверное я херово объяснил задачу.
Создал я хранимую процедуру. Предположим Proc1 @var1 int. Как теперь результат ее выполнения впихнуть в запрос?
SELECT (exec Proc1 CustomerID CustomerID FROM Customers?!

otvertka07

ну блия, в хелпе посмотри синтаксис то там точно есть, я не помню наизусть все...

Slavaga

хм... CREATE FUNCTION спас ситуацию...
Ура товарищи!
Оставить комментарий
Имя или ник:
Комментарий: