SQL Server で単一の行を返す関数があります。現在、そのサーバーには同じテーブル構造を持ついくつか (約数百) のデータベースがあります。その関数をすべてのデータベースで実行したいと考えています。各データベースに関数を作成する必要がありますか、それとも別の方法がありますか?
これはSQL Server 2005上にあります。
実際の関数を投稿する自由はありませんが、行を返すのは単なる SQL Server 関数です。これに似たもの
ALTER FUNCTION [dbo].[getTotalOrdersByProductID](@ProductID bigint, @month varchar(100), @year varchar(100))
RETURNS @retTotalOrder TABLE
(
ProductID BIGINT primary key,
total int
)
AS
BEGIN;
INSERT @retTotalOrder
SELECT ProductID, count(*) AS total
FROM
PRODUCTS
WHERE PRODUCTS.orderdate BETWEEN firstDayOfMonth(@month, @year) AND lastDayOfMonth(@month, @year)
GROUP BY ProductID
RETURN
END;