2015-07-17 5 views
-1

Я «перевод» PHP-приложения и у меня есть некоторые сомнения по поводу этого MySQL Query:MySQL Query для MongoDB

SELECT DISTINCT(t1.foo) FROM table1 as t1, table2 as t2 WHERE t1.foo_id=t2.foo 

Как я могу перевести это в Монго?

+1

[MongoDB does "not" do joins] (http://docs.mongodb.org/manual/faq/fundamentals/) –

ответ

-1

Простой ответ: вы этого не делаете. Mongo не является реляционным, поэтому нет однозначного и простого способа перевода реляционных данных в базы данных на основе документов.

Вы используете (неявное) соединение для запроса отношения, которое охватывает более двух таблиц. Это невозможно в Монго. Тем не менее, вы можете создать схему на основе map/reduce и просмотреть свои данные или использовать связанные/встроенные документы, но это действительно зависит от ваших наборов данных.

Вот небольшая ссылка на comparision между Mongo и SQL.

+0

mapReduce - это «не» замена для соединений каким-либо образом. Существуют только «конкретные» случаи, когда «инкрементный mapReduce» можно использовать для «скругленных» наборов данных, но это отдельные операции и требует коллекцию выходных данных. Если вы действительно ничего не знаете о теме, то комментируйте только (с полезными ссылками), а не пытайтесь отправить ответ. –