sql >> データベース >  >> NoSQL >> MongoDB

BigQueryの行レベルのアトミックMERGEREPLACE

    INSERTはBigQueryDMLでサポートされています

    たとえば

    MERGE dataset.Inventory T
    USING dataset.NewArrivals S
    ON FALSE
    WHEN NOT MATCHED AND product LIKE '%washer%' THEN
      INSERT (product, quantity) VALUES(product, quantity)
    WHEN NOT MATCHED BY SOURCE AND product LIKE '%washer%' THEN
      DELETE   
    

    したがって、ETLを使用することをお勧めします

    わかりました。この場合、INSERTはNOT MATCH句に対してのみ実行できるため、MERGEは適用されないと思います。この場合、誰かがMERGEをだまして機能させる方法を理解するかもしれませんが、それまでの間、以下のソリューションはあなたが達成したいことを実行します-私はそう思います:o)

    CREATE OR REPLACE TABLE `project.dataset.user_q` (user_id INT64, q STRING) AS
    SELECT * FROM `project.dataset.user_q`
    WHERE NOT user_id IN (SELECT DISTINCT user_id FROM `project.dataset.user_q_incoming`)
    UNION ALL
    SELECT * FROM `project.dataset.user_q_incoming`
    WHERE user_id IN (SELECT DISTINCT user_id FROM `project.dataset.user_q`)
    


    1. mongod--dbpathを設定する方法

    2. mongodbローカルサーバーを起動できません

    3. Redisson、作業キュー/デキュー。システム/ポッドのシャットダウンでの不完全なメッセージ処理に関するメッセージ/要素の処理に関する戦略

    4. マングースサブドキュメントの並べ替え