使用pymysql连接数据库
import pymysql conn = pymysql.connect(host='localhost', user='root', password='000', database='homework', charset='utf8') # 使用这个方法获取到执行sql权限 # cursor=pymysql.cursors.DictCursor 添加这个参数就能把获取的元组数据编程字典 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) sql = "select * from student" # 调用execute 来执行上sql语句 cursor.execute(sql) # 在删除和更行的时候需要提交事务 # conn.commit() # #获取到一条数据 res = cursor.fetchone() # #获取到所有的数据 # cursor.fetchall() # #自定义获取到多少数据 # cursor.fetchmany(10) print(res) # 关闭数据库 cursor.close() conn.close()
自连接:
一个表需要查询身需要的数据需要和自己中的数据作比较,
比如: 查询不同课程但成绩相同的学生的学号、课程号、学生成绩
这里查询的时候需要自身表中的成绩做比较,所以就需要自连接查询
select s1.student_id, s1.course_id, s1.num from score as s1 , score as s2 where s1.course_id != s2.course_id and s1.num = s2.num;