2016-07-27 15 views
0

Ich benutze Drill, um MongoDB mit ANSI SQL abzufragen, ich habe ein Feld, das ein Array von Werten enthält, ich möchte auf diese Elemente zugreifen können, um sie mit anderen Dokumenten zu verbinden.Zugriff auf Array-Elemente ANSI SQL

select name from table where table.id = array.element; 

aber anders als FLATTEN, die sie in mehrere Zeilen unterteilt, kann ich nicht die Elemente des Arrays zuzugreifen. Irgendwelche Hilfe bitte?

+0

teilen einige Beispieldaten aus mongoDB Sammlung –

Antwort

1

ich einige Beispieldaten in mongodb

db.col.insert({"id":1,name:"dev","arr":[1,2,3,4]}); 

hinzugefügt Abfrage Arbeiten von Drill:

select name from col4 where id=arr[0]; 

Ausgang:

+-------+ 
| name | 
+-------+ 
| dev | 
+-------+ 
+0

Sie wieder danken, Ich habe es als Antwort markiert, aber tatsächlich wurde das, was ich brauchte, eingerückt gewählt (innerhalb wählen und auswählen) Flatten für das Array) – Jean

+0

@Jean keine Notwendigkeit, die Antwort zu akzeptieren, wenn es Ihre Abfrage nicht abgeschlossen hat. Unakzeptabel und bearbeiten Sie Ihre Frage, fügen Sie Beispiel-MongoDB-Daten und erwartete SQL-Abfrage hinzu. –