web-dev-qa-db-ja.com

msdb.dbo.sysalertsをmsdb.dbo.sysoperatorsに参加させるにはどうすればよいですか?

SQL Server 2008 R2を使用していて、ジョブのスクリプトを作成したいと思います。

1つのジョブに存在するすべてのオブジェクトを見つける必要があります。

この目標を達成するために、私はこのクエリですべての演算子を取得します。

SELECT * FROM msdb.dbo.sysoperators

そして私はこのクエリですべてのアラートを見つけることができます:

SELECT * FROM msdb.dbo.sysalerts

各アラートには複数の演算子があります。

2つのテーブルを結合したいと思います。

  • すべてのアラートのすべてのオペレーターを取得するにはどうすればよいですか?
1

このクエリを使用できます:

SELECT * 
FROM msdb.dbo.sysalerts AS Ale
INNER JOIN msdb.dbo.sysnotifications AS Noti ON Ale.id = Noti.alert_id
INNER JOIN msdb.dbo.sysoperators AS Ope ON Noti.operator_id = ope.id
2