Ваш localField
должен быть openingHoursId.id
не только id
db.Restaurant.aggregate([
{ "$unwind": "$openingHoursId" },
{ "$lookup": {
"from": "OpeningHours",
"localField": "openingHoursId.id",
"foreignField": "_id",
"as": "openingHoursId.RestaurantHours"
}},
{ "$unwind": "$openingHoursId.RestaurantHours" },
{ "$group": {
"_id": " Ваш localField
должен быть openingHoursId.id
не только id
[110]id",
"name": { "$first": "name" },
"openingHoursId": { "$push": "openingHoursId" }
}}
])
ТЕКСТ наиболее подходил бы для неизвестного текста размера. VARCHAR ограничен 65 535 символами от MySQL 5.0.3 и 255 chararcters в предыдущих версиях, поэтому если можно безопасно предположить, что он будет соответствовать там, это будет лучший выбор.
BLOB для двоичных данных, поэтому если Вы не ожидаете, что Ваш текст будет в двоичном формате, это - наименее подходящий тип столбца.
Для получения дополнительной информации обратитесь к документации Mysql относительно строковых типов столбца.
используйте ТЕКСТ, если Вы хотите его, рассматривал как символьная строка, с набором символов.
используйте BLOB, если Вы хотите его, рассматривал как двоичная строка, без набора символов.
Я рекомендую использовать ТЕКСТ.