sql >> Databasteknik >  >> NoSQL >> MongoDB

Radnivå atomic MERGE REPLACE i BigQuery

INSERT stöds av BigQuery DML

till exempel

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   

så du borde vara bra med din ETL

Ok, jag förstår - jag tror att MERGE inte kommer att gälla i det här fallet eftersom INSERT ENDAST kan göras för NOT MATCH-satsen. Någon kanske kommer på hur man kan lura MERGE att fungera i det här fallet, men under tiden gör nedanstående lösning vad du vill uppnå - jag tror det :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. Avaktiverad operation misslyckas för MongoMapper-modellen, kan inte ta bort/ta bort nyckel från modellen

  2. Morphia List<Map<String,Object>>> return Inbäddat element är inte ett DBO-objekt vid sökoperation

  3. redis bgsave misslyckades eftersom gaffeln inte kan allokera minne

  4. Hämtar HTML från MongoDB för användning i mall