如何使用Symfony查询生成器从外表中的连接表中获取第一条记录?

时间:2015-10-05 07:48:39

标签: sql doctrine symfony1

我有两个表,即文章和版本。

文章表可以有很多版本。

Aritcle:
ID | title
1  | title 1
2  | title 2

Version
ID | title     | aritcle_id | date_create
1  | version 1 | 1          | 2015-10-09 12:32:23
2  | version 2 | 1          | 2015-10-08 9:10:20
3  | version 3 | 1          | 2015-10-08 8:10:20
4  | version 4 | 2          | 2015-10-08 10:10:20

我站在版本中,然后我想获得第一个与文章结合的创建版本。

预期结果应如下:

ID  | title
3   | version 3
4   | version 4 

如何编写查询以获得上述结果?

1 个答案:

答案 0 :(得分:0)

对于Article_id = 1首先创建的版本是version 3,因为它是先前创建的。

    select V.ID,V.title
        from Version V
        join (   select article_id,MIN(date_create) as date_create 
                 from Version 
                 group by article_id) as MINDATE
              on V.article_id = MINDATE.article_id 
              and V.date_create = MINDATE.date_create