0

次のクエリを使用して、テーブルがユーザーによって最後に更新された時刻を取得しています。

EXEC sp_MSForEachTable 'SELECT ''?'' as TableName, 
                                  last_user_update,
                                  user_updates,
                                  index_id
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID(''SP3D_DB_RESEARCH_MDB'') AND 
                    OBJECT_ID = OBJECT_ID(''?'')' 

しかし、結果ウィンドウでは、結果ごとに 1 行のテーブルのようになります。結果を並べ替えることができるように、それらを一意のクエリとして結合する方法はありますか?

SQL Server 2008 R2 と Microsoft SQL Server Management Studio を使用しています。

4

1 に答える 1

2

JOINこの手順ではできませんが、結果を 1 つの (一時) テーブル (変数) に取得できます。これINSERT INTOは、EXEC. 例えば

Declare @Collect Table (Name Varchar(100),cnt integer)
Insert into @Collect
EXEC sp_MSForEachTable 'SELECT ''?'' as TableName,Count(*) from ?' 
Select * from @Collect  
于 2014-10-10T05:34:54.593 に答える