我有两个ID和两个集合:
id1 = "otherId", id2="foo"
C1:
{ key: "bob", field: "someId" }
C2:
{ key: "foo", otherField: "bar" },
{ key: "foo", otherField: "bob" }
我想知道的是,是否有任何方法可以为C2
集合中每个具有key = foo
的条目插入一个新文档C1
,但我想在一个查询中从 PHP 中执行此操作。如果我使用的是SQL,并且C1
和C2
是表,我将这样做:
INSERT INTO C1 VALUES (SELECT otherField, 'otherId' FROM C2 WHERE key = 'foo')
也许这是不可能的。事实上,我已经搜索了SO,似乎这不能在一个查询中完成。
谢谢
在使用MongoDB时,我认为业务逻辑应该进入应用程序级别而不是DB。因此,您选择然后创建对象并保存。
AFAIK,这是不可能的。
由于第二个表值取决于第一个表值,因此如果可以从应用程序级别创建对象并在事务中创建对象,然后将它们保存在数据库中,那就太好了。这正是我在项目中所做的。我认为这是您必须从SQL切换到NoSQL所做的更改。