#MongoDB Aggregation Pipeline
db.documents.aggregate([
	{"$match": {"name": "/^asdasd/"}},
	{"$group": {"_id": "$name", {"cnt": {$sum:1}}},
	{"$match": {"cnt": {$gt: 3}}},
	{"$lookup": {from: "meta", localField:"name", foreignField:"name", as: "meta"}}
	{"$match": {"meta": {$exists: True}}},
	{"$out": "debug_collection"}
]);
#SQL Syntax
SELECT *
FROM documents
SELECT *
FROM documents
WHERE name like 'asdasd%'
SELECT name, COUNT(*) AS cnt
FROM documents
WHERE name like 'asdasd%'
GROUP BY name
SELECT name, COUNT(*)
FROM documents
WHERE name like 'asdasd%'
GROUP BY name
HAVING COUNT(*) > 3
SELECT doc.*, meta.*
FROM meta INNER JOIN (
SELECT name, COUNT(*)
FROM documents
WHERE name like 'asdasd%'
GROUP BY name
HAVING COUNT(*) > 3) AS doc ON doc.name = meta.name