0

如何在 nette 数据库中进行非常简单的连接,从而产生这样的查询?

SELECT * FROM Book LEFT OUTER JOIN Author ON Book.author_id = Author.id

我找到了无数关于如何加入的教程,以及 where clausules、order by、group by 等等,但不是像这样的简单加入的单一教程。

我忘了指定,我使用 PHP,所以我需要类似的东西$context->table('Book')->join('author');,但这当然行不通。

4

2 回答 2

1

问题已经回答了,所以我只添加一个注释。

您不能使用 Nette 数据库进行连接,没有连接功能。例如,您可以通过按顺序引用另一个表列来强制连接,但它非常有限。如果需要更复杂的连接,最好使用 Dibi 而不是 Nette 数据库。

于 2016-03-08T15:58:03.647 回答
1

在这种情况下您不需要加入,Nette 为您提供表之间的关系,因此您可以执行以下操作:

foreach($connection->table('book') as $book){
    echo 'Book name: '.$book->name.'<br>'
    echo 'Book autor: '.$book->author->name.'<br>' 
}

我希望在 book 表中有列 author_id ,它是作者表的外键。

于 2016-03-07T21:12:16.110 回答