sqlalchemy查询MySQL视图_sqlalchemy-查询

User这个类创建的表                                User1这个类创建的表

37bbfc01e57dbc0b4920ca764e3d61d3.png 

ad962cb471dd772c0c0483bf2f8fbc0f.png

基本查询结果

# 1查看sql原生语句

rs=session.query(User).filter(User.username=='budong')print(rs)

# 2query(module) .all()

rs=session.query(User).filter(User.username=='budong').all() #.all list

print(rs, type(rs[0])) #索引取值 当query(module) 类型为User类的实例对象

print(rs[0].username,rs[0].id) #rs[0]这个实例对象通过.username,.id取得值

#3 hasattr() getattr()#没有这条数据则会报错超出索引 先判断是否存在hasattr() ,再取值getattr()数据不存在报错

print(hasattr(rs[0], 'username')) #判断是否有这个username属性 返回值True False

if hasattr(rs[0], 'username'):print(getattr(rs[0],'username')) #安全取值

print(rs[0].username)

>>> True

>>> budong

>>> budong

#4 .first() [0]

rs =session.query(User).filter(User.username=='budong').first() #返回一条数据,无则返回none

rs1 =session.query(User).filter(User.username=='budong')[0] #取第一条数据无则报错

print(rs, rs1,sep='\n')print(rs.id, rs1.username) #取出值

if rs !=None:print(rs)>>>

>>> 1budong>>>

#5 query(module的属性)

rs =session.query(User.id).filter(User.username=='tj').all() #all返回list

print(rs) #list

print(rs[0]) #当query(module的属性) 返回结果为元祖

print(rs[0][0])>>> [(2,)]>>> (2,)>>> 2

#6 条件查询#filter_by(直接跟module的属性,以字典形式传参) 并且只能判断 =

rs = session.query(User).filter_by(username='budong').all()print(rs)#filter(module.属性) 能判断 =&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值