Если вы работаете с MS SQL, вы можете сделать:
CREATE PROCEDURE sp_GetMyStuff
(
@From datetime,
@To datetime,
@TableName nvarchar(100)
)
AS
exec('
SELECT DISTINCT
CONVERT (varchar, InspectDateTime) AS ''Inspect Date Time'',
CONVERT (varchar, SynDateTime) AS ''Sync Date Time'',
Employee,
ROUND(OverAllPercentage, 2) AS Grade
FROM
' + @TableName + '
WHERE
(DATEADD(dd, DATEDIFF(dd, 0, InspectDateTime), 0)
BETWEEN
DATEADD(dd, DATEDIFF(dd, 0, ' + @From + '), 0) AND
DATEADD(dd, DATEDIFF(dd, 0, ' + @To + '), 0))
ORDER BY
1
');
и затем просто позвонить
sp_GetMyStuff '2011-05-05', '2011-06-05', 'TBL_MYTABLE'