Это плохо спроектированная схема базы данных.В идеале должна быть только одна таблица со столбцом Week_Day
, и вы должны иметь возможность запросить эту таблицу, просто добавив соответствующее предложение WHERE
.
В любом случае вам нужно будет использовать динамический sql, но вместо представления вы должны использовать хранимую процедуру.Что-то вроде ...
CREATE PROCEDURE dbo.Get_Data
AS
BEGIN
SET NOCOUNT ON;
DECLARE @Sql NVARCHAR(MAX)
,@TableName SYSNAME;
SET @TableName = N'TABLE_' + LEFT(DATENAME(WEEKDAY, GETDATE()) , 3);
SET @Sql = N' SELECT * FROM ' + QUOTENAME(@TableName)
Exec sp_executesql @Sql
END