DJANGO数据库操作

转载自http://blog.youkuaiyun.com/bravezhe/article/details/7255814

返回所有列表对象数据

objects.all()


返回按条件查找的列表对象数据

objects.filter()
ez:
objects.filter(id = 1)          sql:where id = 1
objects.filter(id__in = [1,2,3])    sql:where id in (1,2,3)
objects.filter(id__contains = 1)    sql:where id like %1%

objects.filter(**{'id':'1'})


排除按条件查找的列表对象数据

objects.exclude()



返回对象数据

objects.get()
ez:
objects.get(id = 1)

返回列表字典数据

objects.values()
ez:
object.values('os_id')            sql: select os_id

----------------------------------------------------------------------------------------------------
复杂
from django.db.models import Min,Max,Sum    
objects.all().aggregate(Max('guest_id'))
返回字典{'guest_id__max': 181}
----------------------------------------------------------------------------------------------------
特别
extra:(可以根据django规则,定义类SQL语句,两个表内连接,不能left join,不能多数据库连表查询,结果:列表形式的多个数据对象)(params , select , where , or tables)


raw:(能单数据库连表查询,可以自定义SQL语句,总计总数据不方便,结果:(RawQuerySet)一个数据对象,按列表索引,查出列表)
sql = ""
kvmGuestObjs = KvmGuest.objects.raw(sql)

cursor:(能多数据库连表查询,可以自定义SQL语句,统计总数据方便,结果:元组,按数字查出列表)
from django.db import connection
sql = ""
cursor = connection.cursor()
cursor.execute(sql)
temp_result = cursor.fetchall()
count = len(temp_result)

特殊
自己组装数据对象:()


from django.db.models import Q

sqlalchemy模块


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值