私たちは、Oracleデータベースと私たちのインスタンスをバックアップし、あなたが求めている正確に何を行うには、次のSQLが見つかりました:
注:あなたはおそらく何か他のものにcreated_at
値を更新したいと思うでしょうが、しかし、機能的な違いはないと思う。
INSERT INTO properties (id, user_id, prop_key, text_value, is_empty, created_at)
SELECT
PROPERTIES_SEQ.nextval,
users.id,
'notification.SQ-MyNewIssues.EmailNotificationChannel',
'true',
0,
1505275000000
FROM
users
WHERE
users.id NOT IN (
SELECT user_id
FROM properties
WHERE prop_key = 'notification.SQ-MyNewIssues.EmailNotificationChannel');
INSERT INTO properties (id, user_id, prop_key, text_value, is_empty, created_at)
SELECT
PROPERTIES_SEQ.nextval,
users.id,
'notification.ChangesOnMyIssue.EmailNotificationChannel',
'true',
0,
1505275000000
FROM
users
WHERE
users.id NOT IN (
SELECT user_id
FROM properties
WHERE prop_key = 'notification.ChangesOnMyIssue.EmailNotificationChannel');
ある時点で2つを組み合わせようとしましたが、SQLが複雑すぎます。簡単にコピー貼り付けができます。
G. Annは、あなたが上でそれらをすべてを回す場合は特に、理由通知の膨大な大量のメールフィルターを作成することをユーザーで正しいです。しかし、管理者が一方的な解決策を求めていることもあり、製品がそれを直接サポートしていない場合は、とにかく何かをハックする必要があります。
I reckon電子メールをフィルタリングするインセンティブは、情報がレート制限された要約に統合されていれば、はるかに少なくなります。私はここにその特定のシナリオについて別のstackoverflow投稿を持っています:Can SonarQube notification email quantity be reduced via batching?