python/MySQL练习题(二) 查询各科成绩前三名的记录:(不考虑成绩并列情况) select score.sid,score.course_id,score.num,T.first_num,T.second_num from score left join ( select sid, (select num from score as s2 where s2.course_id = s1.course_id order by num desc limit 0,1) as first_nu…
mysql进阶(二十六)MySQL 索引类型(初学者必看) 索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型. 在数据库表中,对字段建立索引可以大大提高查询速度.假如我们创建了一个 mytable 表: CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL ); 我们随机向里面插入了 10000 条记录,其中有一条:5555, a…
MySQL基准测试(二)--方法 目的: 方法不是越高级越好.而应该善于做减法.至简是一种智慧,首先要做的是收集MySQL的各状态数据.收集到了,不管各个时间段出现的问题,至少你手上有第一时间的状态数据,而不是凭空想象的去做剖析和分析问题. 数据模拟参考 仿真多线程插入和查询语句,可以参考Python模拟数据(MySQL数据库)文档 MySQL状态命令的解释 SHOW GLOBAL VARIABLES 查看目前的MySQL的各个参数变量值. SHOW GLOBAL STATUS 查看全局的MyS…
mysql 基础二 阶段一 表约束 1.not null 非空约束 例子: create table tb1( id int, name varchar(20) not null ); 注意 空字符不等于null #手动,添加非空约束 (必须这个字段,没有NULL值) mysql> alter table tb1 -> modify id int not null; # 取消非空约束 mysql> alter table tb1 -> modify id int ; 2.uni…
MySQL数据库是一个非常流行的关系型数据库.配合Linux.PHP.Apache,简称lamp,是一般个人企业网站的首选.MySQL用起来不难,要系统的用好,可不是一件简单的事.于是PHP程序员雷雪松对MySQL系统的总结一下几点: 1.MySQL的安装(Linux和Windows) 2.MySQL常用操作.基本特性1.增insert into 表名 values(0,’测试’);2.删数据delete from 表名 where id=1;删数据库:drop database 数据库名;删除…
视图: 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. 1. 尽量使用视图完成读操作 2. 如果使用视图,则需要注意,对视图的修改,也是对基表的修改,会即时生效: 3. 删除视图时,不会销毁实体表内的数据 SELECT * FROM ( SELECT nid, NAME FROM tb1 WHERE nid > 2 ) AS A WHERE A. NAME > 'alex'; 临时…
视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( SELECT nid, NAME FROM tb1 WHERE nid > 2 ) AS A WHERE A. NAME > 'alex'; 临时表搜索 1.创建视图 --格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELET nid, name FRO…
视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( SELECT nid, NAME FROM tb1 WHERE nid ) AS A WHERE A. NAME > 'alex'; 临时表搜索 1.创建视图 --格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELET nid, name FROM A W…
MySQL(二) 1.外键及连表 外键 一个特殊的索引,只能是指定内容 CREATE TABLE part1 ( nid INT NOT NULL auto_increment PRIMARY KEY, caption VARCHAR (32) NOT NULL ) CREATE TABLE person1 ( nid INT NOT NULL auto_increment, caption VARCHAR (32) NOT NULL, email VARCHAR (32) NOT NULL,…