概述
为了减少代码的冗余,和脚本的运行可以在服务器上自动化,选择在sql语句中加入循环和变量。mysql常见的三种循环方式:while、repeat和loop循环。没有for,但为了方便需要引入for循环,所以选择了用format方法。
import pymysql
import datetime
def Database(host, user, password, database, port, charset):
'''
连接数据库
:param host: ip
:param user: 用户
:param password: 密码
:param database: 数据库名称
:param port: 端口
:param charset: 编码格式
:return: 数据库
'''
db = pymysql.connect(host=host,
user=user,
password=password,
database=database,
port=port,
charset=charset)
return db
def Students(db, today, getyesterday):
'''
查询数据库中,列表中学生今天,昨天的签到的总数,只是随便举例,主要是思想。
:param db: 数据库
:param today: 今天时间
:param getyesterday: 昨天时间
:return:
'''
cursor = db.cursor()
name = ['zhangsan', 'lishi', 'wangwu', 'zhaoliu']
for i in name:
sql = "select count(*) from student_data"
" where STUDENT_NAME='{}'"
" and TODAY = '{}'"
"and YESTERDAY='{}';".format(i, str(today), str(getyesterday))
# 引入匿名函数,成功引入时间这一变量,和name的for循环。
cursor.execute(sql)
db.commit()
amount = cursor.fetchall()
sum1 = amount[0][0]
# sql查询后,控制台输出的查询结果,
print(sum1)
def All(db):
today = datetime.date.today()
oneday = datetime.timedelta(days=1)
getyesterday = today - oneday
# 获取昨天的时间,如2021-12-24
cursor = db.cursor()
Students(db, today, getyesterday)
cursor.close()
db.close()
# 关闭数据库
if __name__ == '__main__':
db = Database('ip', '用户名', '密码', '数据库', '端口', 'utf8')
All(db)
最后
以上就是曾经路人为你收集整理的python中写sql语句添加for循环和变量。(一种SQL引入循环的思想实现)的全部内容,希望文章能够帮你解决python中写sql语句添加for循环和变量。(一种SQL引入循环的思想实现)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复