исключительно в SQL.
И тут у меня в Монго появилась задача которую я легко решил в Mysql
У меня есть Пользователь, у пользователя есть добавленные какие то айтемы. То есть он как бы владелец этих айтемов.
Так же есть Пользователь который может быть "партнером" данного айтема который добавил пользователь.
В Mysql решал так :
Users -> items
У items я прописывал user_id (Владелец)
Many 2 Many - Таблица partnerings а в ней user_id , item_id
Каким лучше всего способом решить данную задачу ?
не стоит носкуль использовать как реляционную субд от этого возникнет миллион проблем
как минимум нужно начать с того что в nosql данные хранятся в гораздо более денормализованном состоянии вплоть до дубликатов. как максимум построить новую схему данных опираясь на возможности mondodb. с ходу вашу задачу можно решить примерно так: user: { items: [ { title: 'item1', partners: [ {username: 'vasily', user_id: '12'} ] } ] } или если итемов планируется много то развернуть схему относительно итемов item: { title: 'item1', owner: {username: 'Petrov, user_id: '1'}, partners: [ {username: 'vasily', user_id: '12'} ] }
Обсуждают сегодня