sqlalchemy flask case when查询

from sqlalchemy import case
case_sqr = case([(Master.STATUS == 0, Master.SCS)], else_=Master.ZCS).label("SQR")
case_end = case([(Master.STATUS == 0, Master.BLQX)],else_=case([(Master.PZYC == '', Master.SQYC)],else_=Master.PZYC)).label("END")

pages = Master.query.with_entities(Master.AC,case_sqr, case_end).filter(Master.STATUS=1).order_by(Master.MASTERID.desc()).paginate(page_index, page_num, False)

rsp = dict()
items = list()
for one_item in pages.items:
    one_dict = dict()
    one_dict["AC"] = one_item[0]
    one_dict["SQR"] = one_item[1]
    one_dict["END"] = one_item[2]
    items.append(one_dict)
rsp['CUR_PAGE'] = pages.page
rsp['TOTAL_PAGE'] = pages.pages
rsp["ITEMS"] = items

说明:Master为一个数据库类对象,实际情况实际代替,后端用的flask实现,paginate在flask中可用,tornado中没有该方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值