Нет, эквивалент выражения SQL DELETE в DocumentDB не существует, поэтому нет способа сделать это с запросом. Вот хранимая процедура (CoffeeScript), которая делает это для меня, когда я хочу удалить на основе запроса. более
deleteSomeDocuments = (memo) ->
collection = getContext().getCollection()
unless memo?
memo = {}
if memo.returnDeleted
unless memo.deleted?
memo.deleted = []
else
memo.returnDeleted = false
stillQueuingOperations = true
query =() ->
if stillQueuingOperations
responseOptions =
pageSize: memo.remaining
setBody()
if memo.filterQuery?
memo.stillQueueing = collection.queryDocuments(collection.getSelfLink(), memo.filterQuery, responseOptions, onReadDocuments)
else
memo.stillQueueing = collection.readDocuments(collection.getSelfLink(), responseOptions, onReadDocuments)
onReadDocuments = (err, resources, options) ->
if err
throw err
if resources.length isnt memo.remaining
throw new Error("Expected memo.remaining (#{memo.remaining}) and the number of rows returned (#{resources.length}) to match. They don't.")
memo.stillQueueing = true
while memo.remaining > 0 and memo.stillQueueing
oldDocument = resources[memo.remaining - 1]
documentLink = oldDocument._self
etag = oldDocument._etag
options = {etag} # Sending the etag per best practice, but not handling it if there is conflict.
getContext().getResponse().setBody(memo)
memo.stillQueueing = collection.deleteDocument(documentLink, options)
if memo.stillQueueing
if memo.returnDeleted
memo.deleted.push(oldDocument)
memo.remaining--
setBody =() ->
getContext().getResponse().setBody(memo)
query()
return memo
exports.deleteSomeDocuments = deleteSomeDocuments
Одна реализация sproc здесь: https://github.com/aliuy/azure-node-samples/blob/master/documentdb-server-side-js/stored-procedures/bulkDelete.js –
Любая идея если он будет добавлен? – Sandesh
Существует запрос функции для INSERT, UPDATE и DELETE. Он помечен как «Обзор». http://feedback.azure.com/forums/263030-documentdb/suggestions/6346033-set-based-operations-insert-update-delete, однако, я лично считаю, что с введением синтаксиса собственных запросов JavaScript, что они отходя от того, чтобы быть более похожим на SQL. Все в порядке со мной, пока они обновляют родной язык JavaScript, чтобы поддерживать отправку строк для определения функций фильтра. –