2013-10-30 18 views
1

我有以下的燒瓶SQLAlchemy的車型,但SQL表應該很容易找出那些誰也不知道的SQLAlchemy:SQL或SQLAlchemy的表達獲得最近即將推出的電視節目

from myapp.api import db 

class Show(db.Model): 
    id = db.Column(db.Integer, primary_key=True) 
    title = db.Column(db.String(128)) 

class Episode(db.Model): 
    title = db.Column(db.String(256)) 
    airtime = db.Column(db.DateTime) 
    show_id = db.Column(db.Integer, db.ForeignKey('show.id'), primary_key=True) 

    show = db.relationship('Show', backref=db.backref('episodes'), lazy='joined') 

我m試圖爲每個節目獲得最近的即將播出的劇集(以及它的節目),但我無法弄清楚SQL要做到這一點。

我試過了一堆不同的組合min(),GROUP BY等,但我感覺我需要使用子查詢來做到這一點。

我使用SQLite來分析它的價值。

任何想法?

+0

你想要的[標籤:SQL]或[標籤:SQLAlchemy的]回答? –

+1

最後我將使用SQLAlchemy,但我可能必須先弄清楚如何在SQL中執行此操作。 –

回答

0

這應返回最後一集,每個顯示:

SELECT * FROM Show JOIN Episode ON Show.id=Episode.show_id 
WHERE airtime=(SELECT MAX(airtime) FROM Episode WHERE show_id=Show.id) 
相關問題