showdatabases;dropshowdatabases;database python;createdatabase pythonew charset=utf8;use mysql;selectdatabase();showtables;createtable xxxx(id int, name varchar(30));createtable yyyy(id intprimarykeynotnullauto_increment, name varchar(30));desc xxxx;'''
createtable id_class(id int, name varchar(30);createtable students(
id intunsignednotnullauto_incrementprimarykey,
name varchar(30),
age tinyintunsigneddefault0,
high decimal(5,2),
gender enum("man","women","shuangxing","baomi")default"baomi",
cls_id intunsigned););insertinto students values(0,"wang",10,188.00,"man",0);select*from students;INSERTINTO URLS (URL,CONTENT)VALUES("WWW.SANTOSTANG.COM","SANTOS BOLG");INSERTINTO URLS (URL,CONTENT)VALUES("WWW.BAIDU.COM","THIS IS CONTENT");
mysql>DELETEFROM URLS WHERE URL ='WWW.BAIDU.COM';CREATETABLE URLS(-> ID INTNOTNULLAUTO_INCREMENT,-> URL VARCHAR(4000)NOTNULL,-> CONTENT VARCHAR(4000)NOTNULL,-> CREATED_TIME TIMESTAMPDEFAULTCURRENT_TIMESTAMP,->PRIMARYKEY(ID));
Query OK,0rows affected (0.06 sec)DESC URLS;SELECT*FROM URLS WHERE ID =1;SELECT URL ,CONTENT FROM URLS WHERE ID=1;DELETEFROM URLS WHERE URL ='WWW.BAIDU.COM';'''
createdatabase python;showcreatedatabase python;selectdatabase();use pyrhon;dropdatabase python;showcreatetable; 表名字
修改表
altertable 表名 add 列名 类型
altertable classes add birthday datetimealtertable classes modify birthday date;
altertable classes change birthday birth datedefault"2001-01-01";altertable classes drop high;dropdatabase;droptable classes;insertinto classes (name,age)values(12,21),(12,12);insertinto classes values(default,"python",10,"nv"1),()
updata students set gender where id =9;
upddate student set age =9where name ="python";
upddate student set age =9where id =9;where 查询条件
select*from classes where name ="python";select*from classes where id =9;select name,gender from student;select name as 姓名 gender as 性别 from classes;
selecet id as 序号 from classes;--创建有一个数据库createdatabase python_text charset= utf8;--使用数据库use python_text;--显示使用的当前数据库是哪个selectdatabase();-- 创建一个数据表---students表createtable url(id intprimarykeyauto_increment, url_list varchar(1000)notnull)createtable students(
id intunsignedprimarykeyauto_incrementnotnull,
name varchar(20)0,
hright decimal(5,2),
gender enum("男","女","中性","保密")default"保密",
is_delete bitdefault0);--classes表createtable classes(
id intunsignedauto_incrementprimarykeynotnull,
name varchar(30)notnull);-- 创建数据表的方式showcreatetables students;--插入数据insertinto students values(0,'xiaom',13,100.00,2,0),(0,'xiaom',14,100.00,1,0),(0,'xiaom',15,100.00,3,0),(0,'xiaom',16,100.00,1,0),(0,'xiaom',12,100.00,4,0),(0,'xiaom',19,100.00,2,0);insertinto classes values(0,'a'),(0,'b)'),(0,'c');
查询 select*from students;select*from classes;select id, name from classes;
查询字段
select name,age from students;select name as 名字 ,age as 年龄 from students;select s.name,s.age from students as s;select gender from students;--消除重复行selectdistinct gender from students;--条件查询select*from students where age >18;select*from students where age=12;select name,id from students where age>18and age <20;select name,id from students where age>18or age <20;--not 使用select*from students wherenot age>18and gender =1;select*from students wherenot(age>18and gender=1);-- 模糊查询--以xiaom开头的select name from students where name like'xiaom%';--查询姓名中有xiaom 的所有名字%select name from students where name like'%xiaom%';-- 查询有两个字的名字select name from students where name like'__'-- 查询至少有两个字的名字select name from students where name like'__%'-- rlike正则表达式--以xiao开头select name from students where name rlike"^xiao.*"--以m结尾 m$"select name from students where name rlike"^xiao.*m$"--范围查询--非连续使用()select age from students where age in(12,13,14);select age from students where age in(12,13,14);--使用连续select age from students where age between14and20;select age name from students where age notbetween14and20;--select age from students where age not ( between 15 and 20;)select age from students wherenot age between15and20;select age from students where height isnull;select age from students where height isnotnull;--排序select*from students where age between1and18and gender =1orderby age asc;select*from students where(age between1and18)and gender =1orderby age desc;-- 从大到小--多列排序select*from students where(age between1and18)and gender =1orderby age desc, id desc;-- 从大到小select*from students orderby age ascand height desc;--聚合--总数selectcount(*)as 男性人数 from students where gender=1;selectcount(*)as 女性人数 from students where gender=2;--最大值selectmax(age)from students;,,--求和selectsum(age)from students;--最小值--平均值selectavg(age)from students;selectsum(age)/count(*)from students;selectround(sum(age)/count(*),2)from students;--保留两位小数selectround(sum(age)/count(*),3)from students;--四舍五入-- 分组selectfrom students groupbyselect gender,count(*)from students groupby gender
select gender,avg(age)from students groupby gender
select gender,group_concat(name)from students groupby gender;select gender ,group_concat(name,' ',age,' ',id)from students where gender =1groupby gender;select gender ,group_concat(name,'-',age,'-',id)from students where gender =1groupby gender;select gender,group_concat(name),avg(age)from students groupby gender havingavg(age)>2;select gender ,group_concat(name)from students groupby gender;--分页--limit 限制查询出的数据个数--查询前五个select*from students where gender =2limit0,5;--查询第n页select*from students where gender =2limit5,5;limit(第n页-1)* 每页的个数,每页的个数)
--select * from students limit 1,3 order by age asc;select*from students orderby age asclimit1,3;select*from students where gender=2orderby age desclimit0,2;--第二组五个select*from students where gender =2limit5,5;--内连接---取交集select*from students innerjoin classes;--按要求显示姓名,班级
selecet students.name,classes.name from students innerjoin classes on students.cls_id= id_class;--给数据表起名字select s.name,c.name from students as s innerjoin classes as c on s.cls_id = c.id;-- 查询 有能够对应班级的学生以及班级的信息,显示学生的所有信息,只显示班级名称select students.*,classes.name from students innerjoin classes on students.cls_id = classes.id;select c.name,s.name from students as s innerjoin classes as c on s.cls_id = c.id;--排序select c.name,s.name from students as s innerjoin classes as c on s.cls_id = c.id orderby c.name,s.id;--外连接select*from students as s leftjoin classes as c on s.cls_id = c.id;-- 查询没有对应班级信息的学生select*from students as s leftjoin classes as c on s.cls_id = c.id having c.id isnull;select*from students as s leftjoin classes as c on s.cls_id = c.id where c.id isnull;
mysql -uroot -pmysql
createtable--把数据插入mysql
source area.sqlselect*from areas where pid =37000;select*from area where pid =37000;select*from area where id =1;select*from area where pid =37000;select province.atitle,city.atitle from areas as provice innerjoin areas as city on city.pid=province.aid having province.article="山东省"--子查询select*from students where height=188select*from students where height =(selectmax(height)from students);
mysql --uroot -pmysql;createdatabase jin_dong charset=utf8;use jin_dondg;--drop database jin_dong;createtable goods(
id intunsignedprimarykeyauto_incrementnotnull,
name varchar(150)notnull,
cate_name varchar(40)notnull,
brandname varchar(30)notnull,
price decimal(10,3)notnulldefault0,
is_show bitnotnulldefault1,
is_saleoff bitnotnulldefault0);
删除表
droptable goods;insertinto goods values(0,"fag15.4英寸","笔记本","联想","3399",default,default);insertinto goods values(0,"fag15.1英寸","笔本","联想","3399",default,default);insertinto goods values(0,"fag15.3英寸","记本","联想","3399",default,default);insertinto goods values(0,"fag15.4英寸","记本","联想","3399",default,default);insertinto goods values(0,"fag14英寸","笔本","华硕","3399",default,default);insertinto goods values(0,"fag12.4英寸","笔记本","联想","399",default,default);insertinto goods values(0,"fag14.4英寸","笔本","华硕","339",default,default);insertinto goods values(0,"fa,15.4英寸","笔本","华硕","339",default,default);insertinto goods values(0,"fag17.4英寸","游戏本","华硕","399",default,default);insertinto goods values(0,"fa,18.4英寸","笔记本","华硕","39",default,default);insertinto goods values(0,"fa19.4英寸","游戏本","华为","99",default,default);insertinto goods values(0,"f150.4英寸","笔记本","华硕","9",default,default);insertinto goods values(0,"fag15.4英寸","超级本","华为","339",default,default);insertinto goods values(0,"fag15.4英寸","笔记本","华为","3399",default,default);insertinto goods values(0,"fa15.4英寸","超级本","华为","3329",default,default);insertinto goods values(0,"fag15.4英寸","超级本","联想","33929",default,default);insertinto goods values(0,"fag15.4英寸","笔记本","联想","3324",default,default);insertinto goods values(0,"fag15.4英寸","超级本","华为","3352",default,default);insertinto goods values(0,"fag15.4英寸","笔记本","华硕","3399253",defaultdefault);insertinto goods values(0,"fag15.4英寸","笔记本","华硕","339523",default,default);insertinto goods values(0,"fa15.4英寸","笔记本","华硕","3399256",default,default);insertinto goods values(0,"fag15.4英寸","笔记本","三星","3399",default,default);insertinto goods values(0,"fa15.4英寸","笔记本","小米","3399623",default,default);insertinto goods values(0,"fag15.4英寸","笔记本","外形热","3399523",default,0);select*from goods where cate_name="笔本";select name as 名称 ,price as 价格 from goods where cate_name="笔本";
去重
selectdistinct cate_name from goods;select cate_name from goods groupby cate_name;select cate_name, group_concat(price)from goods groupby cate_name;selectround(avg(price),2)from goods;select cate_name ,avg(price)from goods groupby cate_name;select cate_name ,avg(price),max(price),min(price),count(*)from goods groupby cate_name;selectavg(price)from goods;select*from goods where price>432;select*from goods where price>(selectavg(price)from goods);select cate_name ,max(price)from goods groupby cate_name;select cate_name ,max(price)from goods;select*from(select cate_name,max(price)as max_price from goods groupby cate_name)as g_new
leftjoin goods as g
on g_new.cate_name=g.cate_name and g_new.max_price=g.price orderby g_new.cate_name;select g_new.cate_name,goods.name,goods.price from(select cate_name,max(price)as max_price from goods groupby cate_name)as g_new leftjoin goods
on g_new.cate_name=goods.cate_name and g_new.max_price =goods.price orderby g_new.cate_name;createtableifnotexists goods_cates(
id intunsignedprimarykeyauto_increment,
name varchar(40)notnull)select cate_name from goods groupby cate_name;insertinto goods_cates(name)select cate_name from goods groupby cate_name;update goods set cate_name=401where cate_name="笔记本"
把cate_name 改为另一张表的id
update goods as g innerjoin goods_cates as c on g.cate_name=c.name set cate_name=c.id;
改类型
altertable goods change cate_name cate_id intunsignednotnull;
添加外键 确定两列数据的对比
altertable goods addforeignkey(cate_id)references goods_cates(id);createtable goods_brands (
id intunsignedprimarykeyauto_increment,
name varchar(40)notnull)select brandname as name from goods groupby brandname;
同步数据
update goods as g innerjoin goods_brands as b on g.brandname=b.name条件
操作set g.brandname=b.id;
修改表结构
desc goods;altertable goods
change cate_name cate_id intunsignednotnull,
change brandname brand_id intunsignednotnull;
分割表
mysql 的指令 这是我的笔记 show databases;drop show databases;database python;create database pythonew charset=utf8;use mysql;select database(); show tables; create table xxxx(id int, name varchar(30));create table yyyy(id int primary key not null auto_incr