sql to sqlalchemy 轉(zhuǎn)換的小例子
發(fā)布日期:2022-01-02 22:55 | 文章來(lái)源:腳本之家
復(fù)制代碼 代碼如下:
select to_char(date_published, 'yyyymm') yo from blog group by yo;
轉(zhuǎn)換成sqlalchemy 語(yǔ)句
可以使用 extract()
復(fù)制代碼 代碼如下:
In[3]: year_field = db.func.extract('year', ArticleModel.date_published) In[4]: month_field = db.func.extract('month', ArticleModel.date_published) In[5]: yonth_field = year_field *100+ month_field In[6]:print db.session.query(yonth_field.label('yonth'), db.func.count(1)).group_by('yonth') SELECT EXTRACT(year FROM article_meta.date_published)*:param_1 + EXTRACT(month FROM article_meta.date_published)AS yonth, count(:param_2)AS count_1
FROM article_meta JOIN article ON article_meta.id = article.id GROUPBY yonth
也可以 可以通過(guò) func 直接調(diào)用數(shù)據(jù)庫(kù)支持的函數(shù)或存儲(chǔ)過(guò)程
復(fù)制代碼 代碼如下:
yonth = db.func.to_char(ArticleModel.date_published,'yyyymm').label('yonth')
archive_list =(db.session.query(yonth,
db.func.count(1)).group_by('yonth').all())
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
相關(guān)文章
關(guān)注官方微信