2017-03-01 56 views
0

我在documentdb數據庫中有兩個集合。如何編寫documentdb查詢以從具有多個ID的碰撞中獲取數據?

1. users collection 
2. chats collection 

用戶的收集與用戶的詳細信息,包括用戶ID,密碼,姓名等多個文件

聊天記錄的收集與用戶名和聊天記錄數據的多個文檔,因此很容易獲得與特定用戶ID的聊天記錄。

如果我想從chatId或userid文檔中獲取一條記錄,那麼documentdb查詢工作正常。

但現在我的問題是,在我的聊天記錄的集合中的每個文檔具有包含有用戶ID &名對象用戶的陣列,所以現在我已經從聊天集合取1號文件與chatid,這給我的用戶的陣列。

users = [{ 
    userid: 'user-1', 
    username: 'piyush1' 
},{ 
    userid: 'user-2', 
    username: 'piyush2' 
},{ 
    userid: 'user-3', 
    username: 'piyush3' 
},{ 
    userid: 'user-4', 
    username: 'piyush4' 
}]; 

現在我想給這個數組來查詢,這裏本陣來從用戶收集所有用戶的數據有四個用戶的ID,這樣如果我給這個數組來查詢,那麼它應該返回我所有的證件這些用戶來自用戶集合,

如何在documentdb中編寫此查詢?

注意:我不想使用循環。

回答

-1

我認爲你可以使用in過濾器。

例如,

select * 
from users 
where id in ('user1_id', 'user2_id') 

您可以嘗試在這裏https://www.documentdb.com/sql/demo

SELECT food.id, 
    food.description, 
    food.tags, 
    food.foodGroup, 
    food.manufacturerName, 
    food.version 
FROM food 
WHERE food.id in ('14026','14145') 

操場返回2個食品記錄

+0

SELECT * 從用戶 查詢其中userid在({ 「userid」:「bLY4QyqJ」,「username」:「」},{「userid」:「W2yYE50V」,「username」:「」},{「userid」:「UFzVDTkS」},{「userid」:「7OpWfWxR 「}) 我有數組這樣的東西與對象。我想根據數組的所有userids搜索所有用戶。 –

+0

你可以改變你的對象來獲得你需要的id,我認爲這並不難。 –

+0

你是對的,但我不能修改我的數組,這是我的第一個限制,所以我必須根據給定的數組獲取數據。 –

相關問題