关于Python连接liunx中mysql数据库的方式在这一篇文章
这里写目录标题
1.在Liunx服务器中的mysql新建一个表
CREATE TABLE `grade` (
`class` int(5) DEFAULT NULL,
`chinese` int(10) DEFAULT NULL,
`english` int(10) DEFAULT NULL,
`math` int(10) DEFAULT NULL,
`name` varchar(30) DEFAULT NULL,
`age` int(10) DEFAULT NULL,
`sid` int(4) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`sid`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;
2.插入数据
insert into grade (class,chinese,english,math,name,age,sid) VALUES
(1944,72,90,40,'zhangyibo',22,1),(1945,68,80,50,'liuyibo',25,2),(1945,74,20,45,'fuwo',23,3),(1945,44,24,99,'wanghong',25,4),(1946,90,90,90,'zhangqifei',30,5),(1945,80,80,80,'wangfu',28,6);
3.连接liunx中的mysql数据库
import pymysql
db = pymysql.connect(host='192.168.52.129',#数据库的ip地址
user='root',#连接名
passwd='',#你的密码
database='abs',#数据库名称
port=3306)#端口号
curs = db.cursor()
1、查询1946班的成绩信息
sql1 ='select * from grade where class=1946 ;'
curs.execute(sql1)
print(curs.fetchall())
2,查询1944班,语文成绩大于60小于90的成绩信息
sql1 ='select chinese from grade where class=1944 and 60<chinese<90 ;'
curs.execute(sql1)
print(curs.fetchall())
3,查询学生表中1到6行的数据
sql1 ='select * from grade limit 1,6 ;'
curs.execute(sql1)
print(curs.fetchall())
4,显示1944班英语成绩为90,数学成绩为40的姓名与学号
sql1 ='select sid,name from grade where english=90 and math =40 ;'
curs.execute(sql1)
print(curs.fetchall())
5,查询出1946班所有成绩
sql1 ='select chinese,math,english from grade where class=1946 ;'
curs.execute(sql1)
print(curs.fetchall())
6、求出每个班级英语成绩总分
sql1 ='select sum(english),class from grade group by class ;'
curs.execute(sql1)
print(curs.fetchall())
7、求出每个班英语成绩最高的那个人的姓名和班级名称
sql1 ='select name,class from grade where (class,english)in(select class,MAX(english)from grade group by class);'
curs.execute(sql1)
print(curs.fetchall())
8、英语、语文二科分数都大于60分的人名和年纪
sql1 ='select name,age from grade where english>60 and chinese>60 ;'
curs.execute(sql1)
print(curs.fetchall())
9、求出语文分数高于60且其它任何一科目大于60分的人和班级
sql1 ='select name,class from grade where chinese>60 and(math>60 or english>60) ;'
curs.execute(sql1)
print(curs.fetchall())
10、统计每个班的人数
sql1 ='select count(class),class from grade group by class;'
curs.execute(sql1)
print(curs.fetchall())
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/134079.html