ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:443.23KB ,
资源ID:12729036      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12729036.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Mysql笔记.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Mysql笔记.docx

1、Mysql笔记安装;基本命令create table class (stu int,name varchar(20),age int,area varchar(20);库create database show databasesdrop database testdesc tables test /查看表结构drop table testdesc testrename table a to b /重命名表库名不能改增insert into test(id,age,name) /指定列values(1,10,zhang3); /单引号set names gbk; /解决字符编码问题insert

2、 into test(age,name) values(10,张三);改update testset age=111,name=liujichaiwhere id=3;列的默认值:alter table test add age3 tinyint not null default 0;/取消null删除delete from testwhere id=2;alter table y drop column 列名/删除列查select id,name from test where id3; /select,列,where,行添加列alter table test add age1 tinyin

3、t(3) zerofill;create table class (id int primary key auto_increment,age tinyint)charset utf8;insert into test(age,name,age1)values(20,小王,3);整形tinyint 1字节smallint 2mediumint 3int 4bigint 8tinyint(M) unsigned zerofill/ 零填充,无符号浮点型 float(M,D)/m总位数,d小数位 占用4或者8个字节create table goods (name varchar(10) not n

4、ull default ,price float(6,2) not null default 0.00)charset utf8;定点型alter table goods add max float(9,2) not null default 0.0;alter table goods add min decimal(9,2) not null default 0.0;/定点型insert into goods(min,max)values(12.1111111111,13.222222222);字符型create table stu(name char(8) not null default

5、 , /定长,8个UTF-8字符,不够用空格补齐aihao varchar(10) not null default /变长,用1-2个字节来记录占用了多少个字节)charset utf8;速度上,定长速度快chartext 型字符 不能创建索引 日期类型date 日期time 时间datetime 日期时间类型year 年类型 1901-2155create table y (ya year(4) );insert into y /不指定表,默认插入所有列values(1901);year类型,输入一位输入两位00-69表示2000-206970-99表示1970-1999date型1992

6、-08-12日期时间日期create table d (dt data);time类型 hh:mm:ssinsert into y (tm) values (12:10:23);datetime类型 1989-05-06 14:32:05时间戳enum 枚举型set 集合性create table t2 (gender enum(man,girl)charset utf8;char set 例题:name: char(3)age: tinyint unsignedemail: varchar(30)tel: char(11)intro: varchar(100)salary: decimal(

7、7,2)riqi: date create table wolf ( id int primary key auto_increment, name char(3) not null default , age tinyint unsigned not null default 0, email varchar(30) not null default , tel char(11) not null default , salary decimal(7,2) not null default 2000-01-01, riqi date not null default 2012-01-01 )

8、charset utf8;增删改查:案例分析增:哪张表,哪列,值insert into wolf (name,age,email,tel,riqi)values (-);主键值不能重复insert into wolf(name,age,tel)values(张飞,79,66011123),(关羽,88,66011124),(曹操,89,66011125); /一次可以插入多行改update wolf set id=2 name=wolf where * /修该多个值select * from wolf where 1; /这个1为逻辑值真删 :delete 只能删除行,alter可以drop列

9、 delete from wolf where * /查: 安装ecshop 保留upload,重命名为ecshop浏览器输入路径localhost/ecshopE:MySqlECSHopuploadlocalhost/E:/MySql/Enviroment/PHPnow-1.5.4/MySQL-5.0.83/data/testE:MySqlEnviromentPHPnow-1.5.4MySQL-5.0.83datatest列类型数值型 整形 tinyint,smallint,mediumint,intbigint M,unsigned,zerofill 浮点型 定点型float(m,d) u

10、nsigned,M精度,d小数位 decimal 比float更精确字符型 char(M) 定长型,可存储的字符数 varchar(M),日期时间类型 year 1901-2155,两位数输入法, date yy-mm-dd ,范围1000-1-19999-12-31 time HH:mm:ss 范围-838:59:59-838:59:59 datetime YY-MM-DD HH:ii:ss 1000-01-01开发中的问题 时间戳,方便计算,格式成不同的样式 建表语句 create table 表名( 列名称 列类型 【列属性】【默认值】 )engine 引擎名 charset 字符集;增

11、: insert into 表名 (列1,列2,列3) values (值1,值2,值3); /如果不声明插入的列,则默认插入所有列改:update 表名 set 列1=值1,列2=值2 where 表达式;/表达式删:delete from 表名 where 表达式查:select * from 表明查询的5种子句:where 条件查询group by 分组having 筛选order,by 排序limit 限制结果条数一:whereselect 列名 from 表名 where 行;运算符 小于 |=或者 不等于in 在某集合内 between 在某范围内逻辑运算符NOT或 !逻辑非 OR

12、或 | 逻辑或AND或& 逻辑与select id,name from wolf where id in (4,7,8);select id,name from wolf where id between 1 and 3;select id,name,tel from wolf where id = 6 | id=1;select id,name,tel from wolf where id2 & id 10 /统计A类,select *,sum(age) as hk from wolf group by class having hk 30;/查询两门及两门以上不及格同学的平均分select

13、 name,countselect 姓名,avg(分数) from stu group by 姓名;/列名不要用单引号,会出错select *,sum(分数 60) from stu group by 姓名;select *,sum(分数 =2四:order byselect *,age from wolf order by age;select * from wolf where class=A order by age;/默认升序排列,select * from wolf where class=A order by age desc; /desc说明,用倒叙排列select * from

14、 wolf where class=A order by age asc; /指明升序排列select * from wolf where class=A order by age,id desc; /第一排序标准,第二排序标准五:limit取价格最高的三个商品limit放在最后有限制的作用,limitoffset,N /偏移量,取出条目select * from wolf order by age desc limit 3,3;/排序向后偏移3位,取三个数六i:附加:物种子句的使用陷阱组内排序和组代表排序如果有多种语句,按where,group by,having,order by,limi

15、t 顺序写,否则语法错误create table goods like wolf;/表的列复制insert into goods select * from wolf order by age desc;/内容的传递truncate goods /清空表良好的理解模型where 表达式,把表达式放在行中,看表达式是否为真列,理解成变量,可以运算取出结果,可以理解成一张临时表select *,age from wolf group by class order by age desc;/错误,代表进行排序 select id,name,max(age) from wolf group by cl

16、ass;七.子查询where型子查询from型子查询exsts型子查询1.where 型(把内层的查询结果作为外层查询的比较条件)select * from wolf order by age desc limit 1;/求最大age select id,name,class from wolf where age=(select max(age) from wolf);2.from 型:把内层的查询结果当成临时表,供外层再次查询select id,name,age from wolf where age in (select max(age) from wolf group by class

17、);select max(id),age from (select id,name,age from wolf where age in (select max(age) from wolf group by class) as tmp;/把()内当作一张表select 姓名,count(*) from stu where 分数60 group by 姓名;select 姓名 from (select 姓名,count(*) as gk from stu where 分数=2) as tmp;3.exists型把外层的查询结果拿到内层,看内层是否成立mysql select id,name,a

18、ge from wolf where exists (select * from wolf where age 20 );链接:union一.select union 用法 union联合合并查询结果链接查询 左链接 右链接 内链接列的增加与删除与修改select * from wolf where age60 or age 60 union select * from wolf where age select id,num from (select * from ta union select * from tb) as tmp group by id;union 用的时候会自动合并重复的

19、行mysql select * from ta union all select * from tb;/同样的行也会显示mysql (select * from wolf where class=A order by age desc limit 2) union (select * from wolf order by id desc limit 2);mysql (select * from wolf where class=A order by age desc limit 2) union (select * from wolf order by id desc limit 2) or

20、der by id;mysql (select * from wolf where class=A order by age desc limit 2) union (select * from wolf order by id desc limit 2) order by id desc limit 2;在子句中order by 配合limit 使用才有意义,如果order by 不配合limit使用,会被语法分析器分析时去掉二.链接查询左链接 右链接集合 set 集合的特性:无序性、唯一性、理论上讲:不可能存在完全相同的两个行,但是表中可以有完全相同的两行因为,表内部有一个rowid (不

21、可能重复)select * from ta,tb;/ta和tb的排列组合1.连接接上表2.连接条件on join如果字段名重复,添加表前缀select ta.id,ta.num from tb left join ta on ta.id=tb.id;create table boy (name char(3),flower char(5);insert into boyvalues(林书豪,玫瑰),(刘翔,桃花),(周杰伦,茉莉花),(犀利哥,荷花);(刘德华,狗尾巴花);create table girl(name char(3),flower char(5);insert into gir

22、l values(艾薇儿,玫瑰),(居里,桃花),(芙蓉,茉莉花),(凤姐,茉莉花),(林志玲,荷花);找女友的活动select boy.*,girl.* from boy left join girl on boy.flower = girl.flower;左链接:以左表为准,去右表中找匹配数据,找不到用null补齐右链接:以右表为准,去左表中找匹配数据,找不到用null补齐boy left jion girl girl right join boy;推荐使用左链接代替使用右链接三:内链接(排除单身)查询左右表都有的数据select boy.*,girl.* from boy inner j

23、oin girl on boy.flower = girl.flower;左链接和右链接的交集(内链接)左链接和右链接的并集(mysql不能)外链接 三表链接查询select boy.*,girl.* from boy inner join girl on boy.flower = girl.flower left join wolf wolf.id= tb.id(有共同项目,才能链接)create table m(mid int primary key auto_increment,hid int,gid int,mres varchar(5),matime date)charset utf

24、8;insert into m(hid,gid,mres,matime)values(1,2,2:0,2006-05-21),(2,3,1:2,2006-06-21),(3,1,2:5,2006-06-25),(2,1,3:2,2006-07-21);create table t (tid int,tname varchar(10)charset utf8;insert into tvalues(1,国安),(2,申花),(3,传智);t+-+-+| tid | tname |+-+-+| 1 | 国安 | 2 | 申花 | 3 | 传智 |+-+-+m+-+-+-+-+-+| mid | h

25、id | gid | mres | matime |+-+-+-+-+-+| 1 | 1 | 2 | 2:0 | 2006-05-21 | 2 | 2 | 3 | 1:2 | 2006-06-21 | 3 | 3 | 1 | 2:5 | 2006-06-25 | 4 | 2 | 1 | 3:2 | 2006-07-21 |+-+-+-+-+-+ select hid,mres,gid,matime from m; select hid,tname,mres,gid,matime from m left join t on m.hid = t.tid;select hid,t1.tname as hname,mres,gid,t2.tname as gname,matime fromm left join t as t1on m.hid=t1.tidleft join t as t2on m.gid=t2.tidwhere matime between 2006-06-01 and 2006-07-01;附加:列的增加和修改charset = utf8/gbk/增加的列默认在最后面一:增加列可以用after 声明在哪一列后面alter table boy add age tinyint un

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1