FLASK,ORM(mysql),12条查询练习语句

ORM查询语句练习,创表数据在flask课件里,在我资源里可以下载

  • 查询所有用户数据
  • 查询有多少个用户
  • 查询第1个用户
  • 查询id为4的用户[3种方式]
  • 查询名字结尾字符为g的所有数据[开始/包含]
  • 查询名字不等于wang的所有数据[2种方式]
  • 查询名字和邮箱都以 li 开头的所有数据[2种方式]
  • 查询password是 123456 或者 email 以 itheima.com 结尾的所有数据
  • 查询id为 [1, 3, 5, 7, 9] 的用户列表
  • 查询name为liu的角色数据
  • 查询所有用户数据,并以邮箱排序
  • 每页3个,查询第2页的数据
  • 数据库查询语句,删除某个时间段的数据

查询所有用户数据

print("1:所有用户:{}".format(User.query.all()))

查询有多少个用户

print("2:总共有{}个用户".format(User.query.count()))

查询第1个用户

print("3:第一个用书是{}".format(User.query.first()))

查询id为4的用户[3种方式]

print("4:id为4的用户是{}".format(User.query.get(4)))
print("4:id为4的用户是{}".format(User.query.filter_by(id=4).first()))
print("4:id为4的用户是{}".format(User.query.filter(User.id==4).first()))

查询名字结尾字符为g的所有数据[开始/包含]

print("5:名字结尾是g的用户有{}".format(User.query.filter(User.name.endswith("g")).all()))
print("5:名字开头是g的用户有{}".format(User.query.filter(User.name.startswith("g")).all()))
print("5:名字包含是g的用户有{}".format(User.query.filter(User.name.contains("g")).all()))

查询名字不等于wang的所有数据[2种方式]

content_wang = User.query.filter(User.name != "wang").all()
print("wang{}".format(content_wang))

查询名字和邮箱都以 li 开头的所有数据[2种方式]

content_li = User.query.filter(User.name.startswith("li"), User.email.startswith("li")).all()
print(content_li)
content_li2 = User.query.filter(and_(User.name.startswith("li"), User.email.startswith("li"))).all()
print(content_li2)

查询password是 123456 或者 email 以 itheima.com 结尾的所有数据

content_d = User.query.filter(or_(User.password=="123456",User.email.endswith("itheima.com"))).all()
print(content_d)

查询id为 [1, 3, 5, 7, 9] 的用户列表

content_id = User.query.filter(User.id.in_([1, 3, 5, 7, 9])).all()
print(content_id)

查询name为liu的角色数据

content_name = User.query.filter(User.name == "liu").first()
role_name = Role.query.filter(content_name.role_id == Role.id).first()
print(content_name)
print(role_name)

查询所有用户数据,并以邮箱排序

all_users_data = User.query.order_by(User.email).all()
print(all_users_data)

每页3个,查询第2页的数据

page_limit = User.query.paginate(3,2,False).items
print(page_limit):

数据库查询语句,删除某个时间段的数据

delete from 表名 where cast(字段名  as datetime)<'2009-07-21'
例子
delete from projectuser where cast(create_time  as datetime)>'2021-03-09';

你可能感兴趣的:(《Python专栏》,flaskORM)