Wie erfolgt die Feldauswahl bei find () im nativen mongodb-Treiber?

7

Ich verwende den mongodb nativen Treiber für node.js und kann die Feldauswahl nicht bearbeiten. Ich möchte Felder auf Namen beschränken. Ich will nicht das letzte in der Ausgabe.

Ich mache das:

%Vor%

Aber das Protokoll druckt:

%Vor%

Also gibt es kein name in der Ausgabe.

Aktualisieren : Ich habe ein Objekt anstelle von Array versucht - hat nicht funktioniert. Der Grund ist, Inklusion und Exklusion zu vermischen. Du kannst es nicht mischen. Wenn ich nur "name":true hatte, funktionierte es.

    
user3111525 08.01.2014, 14:22
quelle

4 Antworten

15

Das Feldauswahlargument für find ist ein Objekt, kein Array. Und Sie können Feldeinschluss und -ausschluss nicht mischen (außer für _id ), also sollte es sein:

%Vor%     
JohnnyHK 08.01.2014, 14:34
quelle
5

Wenn Sie den neuesten mongodb 3.0 nodejs-Treiber verwenden, versuchen Sie diesen Code:

%Vor%     
lee shin 11.01.2018 16:02
quelle
0

Lassen Sie das Array weg:

%Vor%     
TheHippo 08.01.2014 14:34
quelle
0

Die empfohlene Vorgehensweise in v3.0 ist das Projektionsfeld im Optionsobjekt:

%Vor%

Wie in der angenommenen Antwort erwähnt, können Sie Einschluss und Ausschluss noch immer nicht kombinieren.

Siehe: Ссылка

    
James 15.02.2018 21:24
quelle

Tags und Links