Python3-sqlalchemy-orm 分组统计
#-*-coding:utf-8-*-
#__author__ = "logan.xu" import sqlalchemy
from sqlalchemy import create_engine,funcfrom sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,Integer,String
from sqlalchemy.orm import sessionmaker engine=create_engine("mysql+pymysql://root:12345678@localhost/news",encoding='utf-8',echo=True)
Base=declarative_base() class User(Base):
__tablename__='user'
id=Column(Integer,primary_key=True)
name=Column(String(32))
password=Column(String(64)) def __repr__(self):
return "<%s name:%s>" %(self.id,self.name) Base.metadata.create_all(engine) #创建表结构 Session_class=sessionmaker(bind=engine)
#创建与数据库的会话session class,注意,这里返回给session的是这个class,不是实例
Session=Session_class() #生成session实例 #查询
#data=Session.query(User).filter(User.id>2).all() #filter可以写大于,filter_by不可用写大于
#data=Session.query(User).filter(User.id>1).filter(User.id<3).all() #列取多个条件查询
#data=Session.query(User).filter_by(id=2).all()
#data=Session.query(User).filter(User.id==2).all()
#data=Session.query(User).filter_by().first() #列出一个
#print(data) #修改
#data=Session.query(User).filter(User.id>1).filter(User.id<4).first()
#print(data)
#data.name="Jack Liu"
#data.passwod="Shit happens" #回滚
#fake_user=User(name='Rain',password='12345')
#Session.add(fake_user)
#print(Session.query(User).filter(User.name.in_(['Jack','rain'])).all())
#
#Session.rollback() #此时你rollback一下
#print("after rollback")
#
#print(Session.query(User).filter(User.name.in_(['Jack','rain'])).all())
#Session.commit() #现在才统一提交,创新数据 #分组统计
fake_user=User(name='Rain',password='12345')
Session.add(fake_user) print(Session.query(User.name,func.count(User.name)).group_by(User.name).all())
Session.commit() #现在才统一提交,创新数据

Python3-sqlalchemy-orm 分组统计的更多相关文章
- Python3+SQLAlchemy+Sqlite3实现ORM教程
一.安装 Sqlite3是Python3标准库不需要另外安装,只需要安装SQLAlchemy即可.本文sqlalchemy版本为1.2.12 pip install sqlalchemy 二.ORM操 ...
- Python-12-MySQL & sqlalchemy ORM
MySQL MySQL相关文章这里不在赘述,想了解的点击下面的链接: >> MySQL安装 >> 数据库介绍 && MySQL基本使用 >> MyS ...
- sqlalchemy ORM
本节内容 ORM介绍 sqlalchemy安装 sqlalchemy基本使用 多外键关联 多对多关系 1. ORM介绍 orm英文全称object ...
- Python sqlalchemy orm 常用操作
增add # 创建表1 # 注:高级封装 import sqlalchemy # 调用链接数据库 from sqlalchemy import create_engine # 调用基类Base fro ...
- sqlalchemy orm 操作 MySQL
一.ORM介绍 orm英文全称object relational mapping,是对象映射关系程序,简单来说类似python这种面向对象的程序来说一切皆对象,但是我们使用的数据库却都是关系型的,为了 ...
- python 之路,Day11 (下)- sqlalchemy ORM
python 之路,Day11 - sqlalchemy ORM 本节内容 ORM介绍 sqlalchemy安装 sqlalchemy基本使用 多外键关联 多对多关系 表结构设计作业 1. ORM ...
- python之SQLAlchemy ORM 上
前言: SQLAlchmey是暑假学的,当时学完后也没及时写博客整理下.这篇博客主要介绍下SQLAlchemy及基本操作,写完后有空做个堡垒机小项目.下篇博客整理写篇关于Web框架和django基础~ ...
- python之SQLAlchemy ORM
前言: 这篇博客主要介绍下SQLAlchemy及基本操作,写完后有空做个堡垒机小项目.有兴趣可看下python之数据库(mysql)操作.下篇博客整理写篇关于Web框架和django基础~~ 一.OR ...
- python3 SQLAlchemy模块使用
更详细的操作介绍:https://www.imooc.com/article/22343 定义: SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对 ...
随机推荐
- JDK 和 CGLib 实现动态代理和区别
JDK 和 CGLib 实现动态代理和区别 在日常的开发中,Spring AOP 是一个非常常用的功能.谈到 AOP,自然离不开动态代理. 那么,基于 JDK 和 CGLib 如何实现动态代理,他们之 ...
- Python脚本:批量将.doc文件转化为.docx文件
将.doc转换为.docx文件有几种常用的方法: Microsoft Word 和 WPS 自带.doc转换.docx功能,但只能一个文件一个文件转换,批量转换要会员 在线网页 Office-Conv ...
- thinkphp 初始化
public function _initialize(){ //$top_img = M('adv')->where(array('adv_id'=>1057))->find(); ...
- vulnhub-DC:7靶机渗透记录
准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...
- js控制单选按钮选中某一项
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...
- 剑指 Offer 40. 最小的k个数
剑指 Offer 40. 最小的k个数 输入整数数组 arr ,找出其中最小的 k 个数.例如,输入4.5.1.6.2.7.3.8这8个数字,则最小的4个数字是1.2.3.4. 示例 1: 输入:ar ...
- web笔记随笔
1.Web服务组件 8.第三方内容:广告统计.mockup 7.Web前端框架: HTML5. jQuery. Bootstrap 6.Web应用: CMS. BBS. Blog 5.Web开发框架: ...
- Java面向对象15——内部类
内部类(了解) 成员内部类 package oop.demon01.demon10; public class Outer { private int id = 10; pu ...
- zookeeper的简介和相关命令操作
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- repeatedly function in Clojure
user=> (doc repeatedly) clojure.core/repeatedly ([f] [n f]) Takes a function of no args, presumab ...