2017-04-24 63 views
0

這是我的第一個Flask項目,我試圖堅持MVC,而不是開始編寫SQL,這是困難的。將這個簡單的查詢轉換爲Flask-SQLAlchemy是我目前無法解決的難題。選擇兩個不同的列與燒瓶和sqlalchemy

SELECT DISTINCT gradelevel, beginningorendtest 
FROM wordlist 
ORDER BY gradelevel,beginningorendoftest 

我很欣賞任何想法,它可能不適用於Flask-SQLAlchemy。這是我最近的嘗試。

data = wordlist.query.add_columns(wordlist.gradelevel, wordlist.beginningorendtest).distinct() 
print (data)  
for row in data: 
    print ("Gradelevel:" + row.gradelevel + " BeginningorEndoftest:" + row.beginningorendtest) 

回答

0

重整一段時間後,這:

data = wordlist.query.with_entities(wordlist.gradelevel, wordlist.beginningorendtest) 
     .distinct().order_by(wordlist.gradelevel).order_by(wordlist.beginningorendtest) 

會產生這種等效查詢:

SELECT DISTINCT wordlist.gradelevel AS wordlist_gradelevel,wordlist.beginningorendtest AS wordlist_beginningorendtest 
FROM wordlist ORDER BY wordlist.gradelevel, wordlist.beginningorendtest