MYSQL基础知识的复习3
聚合函数
- max():求最大值
例:求最高工资select max(sal) from emp;
- min():求最小值
例:求最小工资select min(sal) from emp;
- avg():求平均值
例:求平均工资select avg(sal) from emp;
- count():求个数
例:求员工个数select count(empno) from emp;
- sum():求和
例:求所有员工工资和select sum(sal) from emp;
例1
求比20号部门所有员工薪水高的员工信息:
select * from emp where sal > (select max(sal) from emp where deptno = 20);
分组查询(group by):
例子:求每个部门的最高薪水
select max(sal) from emp group by deptno;
注意:使用分组查询后select后只能跟聚合函数以及分组的字段
例2
求每个部门的最高薪水、部门号和员工名称
思路:把查询到的结果作为一张表和现存的表联表查询
分组条件(having):
例:查询每个部门中最高薪水并且显示最高薪水大于30000的
select max(sal),deptno from emp group by deptno having max(sal) > 30000;
注意:在where后不能跟聚合函数,having后可以跟聚合函数以及分组的字段
练习
create database library;
use library;
-- 创建表readers 读者信息表
create table readers(
reader_id int(7) primary key,-- 读者id
name varchar(8),-- 读者姓名
sex varchar(2) default '男' check(sex in('男','女')),
dept varchar(16),-- 读者所在部门
status varchar(8),-- 学历
address varchar(30)-- 地址
);
-- 图书信息表
create table books(
book_id int(6) primary key,-- 图书编号
type_id varchar(3),-- 类型编号
book_name varchar(50),-- 图书名
author varchar(50),-- 作者
publisher varchar(50),-- 出版社
price int(3)-- 价格
);
-- 借阅信息表
create table borrow_info(
reader_id int(7),-- 读者id
book_id int(6),-- 图书Id
borrow_time date,-- 借书时间
notes varchar(200),-- 标志
primary key(reader_id,book_id)
);
alter table borrow_info add constraint fk_boorow_reader foreign key(reader_id) references readers(reader_id);
alter table borrow_info add constraint fk_boorow_books foreign key(book_id) references books(book_id);
-- 添加数据readers
insert into readers values('0034103','范元帅','男','艺术学院','本科生','师大南院');
insert into readers values('0034301','杨凡','男','电信学院','教师','八里台禄小区');
insert into readers values('0034429','许丹丹','女','艺术学院','本科生','师大南院');
insert into readers values('0134101','陈超','男','计算机学院','本科生','师大南院');
insert into readers values('0134102','范金良','男','计算机学院','本科生','师大南院');
insert into readers values('0134103','国皓','男','计算机学院','本科生','师大南院');
insert into readers values('0134104','贺云龙','男','计算机学院','本科生','师大南院');
insert into readers values('0134105','刘德文','男','计算机学院','本科生','师大南院');
insert into readers values('0134106','彭俊','男','计算机学院','本科生','师大南院');
insert into readers values('0134107','彭志成','男','计算机学院','本科生','师大南院');
insert into readers values('0134108','沈举','男','计算机学院','本科生','师大南院');
insert into readers values('0134109','田强','男','计算机学院','本科生','师大南院');
insert into readers values('0134110','王旭','男','计算机学院','本科生','师大南院');
insert into readers values('0134111','吴卫','男','计算机学院','本科生','师大南院');
insert into readers values('0134112','熊敏','男','计算机学院','本科生','师大南院');
insert into readers values('0134113','颜东','男','计算机学院','本科生','师大南院');
insert into readers values('0134114','殷建鹏','男','计算机学院','本科生','师大南院');
insert into readers values('0134115','周春林','男','计算机学院','本科生','师大南院');
insert into readers values('0134116','陈洁','女','计算机学院','本科生','师大南院');
insert into readers values('0134117','陈琪','女','计算机学院','研究生','师大南院');
insert into readers values('0134118','丁璐','女','计算机学院','研究生','师大南院');
insert into readers values('0134119','丁岩','女','计算机学院','本科生','师大南院');
insert into readers values('0134120','董蕾','女','计算机学院','本科生','师大南院');
insert into readers values('0134121','何芳','女','计算机学院','本科生','师大南院');
insert into readers values('0134122','蒋莎','女','计算机学院','本科生','师大南院');
insert into readers values('0134123','李颖','女','计算机学院','研究生','师大南院');
insert into readers values('0134124','李芬','女','计算机学院','研究生','师大南院');
insert into readers values('0134125','李锦萍','女','计算机学院','教授','师大南院');
insert into readers values('0134126','李小汐','女','计算机学院','本科生','师大南院');
insert into readers values('0134127','李玥玖','女','计算机学院','本科生','师大南院');
insert into readers values('0134128','郦莎','女','计算机学院','本科生','师大南院');
insert into readers values('0134129','廖英','女','计算机学院','本科生','师大南院');
insert into readers values('0134130','林琳','女','计算机学院','教师','师大南院');
insert into readers values('0134131','林敏','女','计算机学院','本科生','师大南院');
insert into books values('109101','BAS','高等数学','李方健','清华大学出版社','20');
insert into books values('109104','BAS','离散数学','孙德风','天津大学出版社','22');
insert into books values('109107','ELC','数字电路','刘国庆','高等教育出版社','13');
insert into books values('109109','CMP','C语言程序设计','谭浩强','清华大学出版社','15');
insert into books values('109110','CMP','数据结构','王志国','高等教育出版社','32');
insert into books values('109111','CMP','操作系统','王志国','高等教育出版社','25');
insert into books values('109112','CMP','计算机组成原理','张小敏','南大在学出版社','27');
insert into books values('109113','CMP','微机原理与接口技术','刘国庆','人民大学出版社','34');
insert into books values('109114','CMP','数据库原理','彭来德','高等教育出版社','16');
insert into books values('109115','CMP','计算机网络','马国露','人民大学出版社','11');
insert into books values('109116','CMP','计算机网络','谭浩强','南大在学出版社','13');
insert into books values('109117','CMP','编译原理','方刚','清华大学出版社','38');
insert into books values('209101','CMP','VB与WINDOWS程序设计','谭浩强','清华大学出版社','30');
insert into books values('209102','CMP','C++与面向对象技术','谭浩强','人民大学出版社','19');
insert into books values('209103','CMP','Java与网络程序设计','付勇','高等教育出版社','20');
insert into books values('209106','CMP','单片机原理及应用','刘国庆','人民大学出版社','22');
insert into books values('209107','CMP','PLC原理及其应用开发','刘国庆','南大在学出版社','16');
insert into books values('209111','CMP','人工智能导论','丁宝康','高等教育出版社','18');
insert into books values('209116','CMP','信息论与编码学概论','丁宝康','高等教育出版社','21');
insert into books values('209117','CMP','密码学基础','张顺志','人民大学出版社','25');
insert into books values('209123','CMP','Internet应用及网页设计','李朋','高等教育出版社','16');
insert into books values('209124','CMP','多媒体技术及应用','谭浩强','高等教育出版社','15');
insert into books values('209130','CMP','PB与数据库应用开发','张华强','清华大学出版社','42');
insert into books values('209132','CMP','计算机图形学','徐志超','人民大学出版社','27');
insert into books values('309102','CMP','计算机学科教学论','丁宝康','高等教育出版社','12');
insert into books values('309103','CMP','中学计算机教材研究与分析','徐志超','人民大学出版社','14');
insert into books values('309104','CMP','信息技术概论','付勇','天津大学出版社','24');
insert into books values('309105','CMP','数据库分析与设计','丁宝康','人民大学出版社','30');
insert into books values('309106','CMP','数据库导论','付勇','清华大学出版社','29');
insert into borrow_info values('0034103','109101','2005-6-2 00:00:00','NULL');
insert into borrow_info values('0034301','209130','2005-6-14 00:00:00','NULL');
insert into borrow_info values('0034429','109107','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134101','109109','2005-6-3 00:00:00','NULL');
insert into borrow_info values('0134102','109110','2005-6-30 00:00:00','NULL');
insert into borrow_info values('0134103','109111','2005-6-13 00:00:00','NULL');
insert into borrow_info values('0134104','109112','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134105','109113','2005-6-14 00:00:00','NULL');
insert into borrow_info values('0134106','109114','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134107','109115','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134108','109116','2005-6-12 00:00:00','NULL');
insert into borrow_info values('0134109','109117','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134110','209101','2005-6-22 00:00:00','NULL');
insert into borrow_info values('0134111','209102','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134112','209103','2005-6-16 00:00:00','NULL');
insert into borrow_info values('0134113','209106','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134114','209107','2005-6-11 00:00:00','NULL');
insert into borrow_info values('0134115','209111','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0134116','209106','2005-6-14 00:00:00','NULL');
insert into borrow_info values('0034301','209132','2005-6-1 00:00:00','NULL');
insert into borrow_info values('0034301','309102','2005-6-9 00:00:00','NULL');
insert into borrow_info values('0034301','309103','2005-6-21 00:00:00','NULL');
insert into borrow_info values('0034301','309104','2005-6-14 00:00:00','NULL');
insert into borrow_info values('134101','109101','2005-6-1 00:00:00','NULL');
insert into borrow_info values('134102','109104','2005-6-8 00:00:00','NULL');
insert into borrow_info values('134104','109107','2005-6-1 00:00:00','NULL');
insert into borrow_info values('134105','109109','2005-6-1 00:00:00','NULL');
-- 1、检索读者“杨凡”所在单位
select dept from readers where name = '杨凡';
-- 2、检索所有读者的全部信息
select * from readers;
-- 3、检索图书馆中所有藏书的书名和出版单位
select book_name,publisher from books;
-- 4、检索“人民大学出版社”所有的书名和单价,结果按照单价降序排列
select book_name,price from books where publisher = '人民大学出版社' order by price desc;
-- 5、检索价格在10元至15元之间的图书的名称、作者、单价和分类号,
-- 结果按分类号和单价升序排列
select book_name,author,price,type_id from books where price between 10 and 15;
-- 6、检索“人民大学出版社”和“清华大学出版社”的所有图书的名称和作者
select book_name,author from books where publisher in ('人民大学出版社','清华大学出版社');
-- 7、检索书名以“数据库”开头的所有图书的书名和作者
select book_name,author from books where book_name like '数据库%';
-- 8、检索同时借了总编号为209116和209124两本图书的借书证号
select reader_id from borrow_info where reader_id in (
select reader_id from borrow_info where book_id = 209124 ) and book_id = 209116;
-- 9、检索所有借阅了图书的读者姓名和所在单位
select distinct name,dept from readers,borrow_info where readers.reader_id = borrow_info.reader_id;
-- 10、检索“扬凡”所借的所有图书的书名和借阅日期
select book_name,borrow_time from borrow_info b,readers r,books where b.reader_id = r.reader_id
and books.book_id = b.book_id and name = '杨凡';
-- 11、检索价格在20元以上且已经借出的图书,结果按单价降序排列
select book_name,price from borrow_info bo,books b where bo.book_id = b.book_id and price > 20 order by price desc ;
-- 12、检索借阅了“C语言程序设计”一书的读者姓名和所在单位
select name,dept from books b,borrow_info bo,readers r where b.book_id = bo.book_id and r.reader_id = bo.reader_id
and book_name = 'C语言程序设计';
-- 13、检索与“杨凡”在同一天借阅了图书的读者的姓名和所在单位
select distinct name,dept from readers r,borrow_info bi where bi.reader_id = r.reader_id and borrow_time in (
select borrow_time from borrow_info bi,readers r where bi.reader_id = r.reader_id and name = '杨凡')and name!='杨凡';
-- 14、检索藏书中比“高等教育出版社”的所有图书的单价更高的图书
select book_name from books where price >(
select max(price) from books where publisher = '高等教育出版社');
-- 15、检索藏书中所有与“数据库导论”或“数据库原理”在同一出版社出版的图书
select book_name from books where publisher in (
select publisher from books where book_name = '数据库导论' or book_name = '数据库原理')
and book_name not in('数据库导论','数据库原理');
-- 16、求该图书馆藏书的总册数
select count(book_id) from books;
-- 17、求“高等教育出版社”的图书中最高的价格、最低的价格以及平均价格
select max(price),min(price),avg(price) from books where publisher = '高等教育出版社';
-- 18、求“计算机学院”当前借阅了图书的读者人数
select count(t.name) from readers r,(select distinct name from borrow_info bf,readers r where bf.reader_id = r.reader_id and dept = '计算机学院') t
where r.name = t.name;
-- 19、求各个出版社的最高价格、最低价格、平均价格
select max(price),min(price),avg(price),publisher from books group by publisher;
-- 20、分别求出各个单位当前借阅图书的读者人数
select count(distinct bf.reader_id) from readers r,borrow_info bf where r.reader_id = bf.reader_id group by dept;
-- 21、求各个出版单位的册书、价格总额,并按总价降序排列,
select count(book_id),sum(price),publisher from books group by publisher order by sum(price);
-- 22、检索当前至少借阅了5本图书的读者姓名和所在单位
select name,dept from readers r,borrow_info bf where r.reader_id = bf.reader_id group by bf.reader_id HAVING count(bf.reader_id) >=5;
-- 23、分别找出借书人数超过10个人的单位和人数
select dept,count(distinct bf.reader_id) from borrow_info bf,readers r where r.reader_id = bf.reader_id group by dept having count(bf.reader_id) >=10;
-- 24、检索没有借阅任何图书的读者姓名和所在单位
select name,dept from readers where reader_id not in (select reader_id from borrow_info);
MYSQL中常见的一些函数
1.算术函数
- ceil(字段):向上取整
- floor(字段):向下取整
- format(字段,n):保留n位小数 可以四舍五入
- mod():取模 mod(10,3) 10取余3
2.字符串函数
- concat(string [,...]):拼接字符串
- instr(string,substring):查询sub在字符串str中第一次出现的位置 不存在返回0,第一个就是1,第二个就是2
- ucase(str):把字符串str转成大写
- lcase(str):把字符串str转成小写
- left(string2,length):查询字符串string2左数前length个字符
- right(string2,length):查询字符串string2右数前length个字符
- length(string):求字符串占用字节数 一个汉字占三个字节
- char_length(str):求字符串占用字符数
- replace(str,search_str,replace_str):替换 将str中search_str替换为replace_str
- substring(str,position[,length]):截取字符串 从position位置截取length个字符,如果没有length那就截取到最后
- lpad(str ,length , 填充字符) 在前面
- rpad(str ,length , 填充字符) 在后面
3.时间日期相关函数
- now():表示当前日期和时间 时分秒
- year():获取日期的年份
- month():获取日期的月份
- last_day:获取月份的最后一天的日期
- datediff(date1,date2):两个日期相隔的天数 前面减后面
- timestampdiff(unit,datetime_expr1,datetime_expr2):unit 单位 后面减前面 可以按照单位进行时间差
练习
CREATE DATABASE test1;
USE test1;
-- 部门表
CREATE TABLE DEPT(
DEPTNO int PRIMARY KEY,-- 部门编号
DNAME VARCHAR(14) , -- 部门名称
LOC VARCHAR(13) -- 部门地址
) ;
INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');
INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');
INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');
-- 员工表
CREATE TABLE EMP(
EMPNO int PRIMARY KEY, -- 员工编号
ENAME VARCHAR(10), -- 员工姓名
JOB VARCHAR(9), -- 员工工作
MGR int, -- 员工直属领导编号
HIREDATE DATE, -- 入职时间
SAL double, -- 工资
COMM double, -- 奖金
DEPTNO int -- 对应dept表的外键
);
-- 添加 部门 和 员工 之间的主外键关系
ALTER TABLE EMP ADD CONSTRAINT FOREIGN KEY EMP(DEPTNO) REFERENCES DEPT (DEPTNO);
INSERT INTO EMP VALUES(7369,'SMITH','CLERK',7902,"1980-12-17",800,NULL,20);
INSERT INTO EMP VALUES(7499,'ALLEN','SALESMAN',7698,'1981-02-20',1600,300,30);
INSERT INTO EMP VALUES(7521,'WARD','SALESMAN',7698,'1981-02-22',1250,500,30);
INSERT INTO EMP VALUES(7566,'JONES','MANAGER',7839,'1981-04-02',2975,NULL,20);
INSERT INTO EMP VALUES(7654,'MARTIN','SALESMAN',7698,'1981-09-28',1250,1400,30);
INSERT INTO EMP VALUES(7698,'BLAKE','MANAGER',7839,'1981-05-01',2850,NULL,30);
INSERT INTO EMP VALUES(7782,'CLARK','MANAGER',7839,'1981-06-09',2450,NULL,10);
INSERT INTO EMP VALUES(7788,'SCOTT','ANALYST',7566,'1987-07-03',3000,NULL,20);
INSERT INTO EMP VALUES(7839,'KING','PRESIDENT',NULL,'1981-11-17',5000,NULL,10);
INSERT INTO EMP VALUES(7844,'TURNER','SALESMAN',7698,'1981-09-08',1500,0,30);
INSERT INTO EMP VALUES(7876,'ADAMS','CLERK',7788,'1987-07-13',1100,NULL,20);
INSERT INTO EMP VALUES(7900,'JAMES','CLERK',7698,'1981-12-03',950,NULL,30);
INSERT INTO EMP VALUES(7902,'FORD','ANALYST',7566,'1981-12-03',3000,NULL,20);
INSERT INTO EMP VALUES(7934,'MILLER','CLERK',7782,'1981-01-23',1300,NULL,10);
-- 工资等级表
CREATE TABLE SALGRADE(
GRADE int, -- 等级
LOSAL double, -- 最低工资
HISAL double ); -- 最高工资
INSERT INTO SALGRADE VALUES (1,700,1200);
INSERT INTO SALGRADE VALUES (2,1201,1400);
INSERT INTO SALGRADE VALUES (3,1401,2000);
INSERT INTO SALGRADE VALUES (4,2001,3000);
INSERT INTO SALGRADE VALUES (5,3001,9999);
-- 1. ceil(字段):向上取整
select ceil(50.1) from dual;
-- 2. floor(字段):向下取整
select floor(10.9) from dual;
-- 3. format(字段,n):保留n位小数 可以四舍五入
select format(20.3435514,4) from dual;
-- 4. mod():取模 mod(10,3) 10取余3
select mod(100,3) from dual;
-- 1. concat(string [,...]):拼接字符串
select concat('Hello','World','!') from dual;
-- 2. instr(string,substring):查询sub在字符串str中第一次出现的位置 不存在返回0,第一个就是1,第二个就是2
select instr('wafawfafw','a') from dual;
select instr('aaaaaaa','b') from dual;
-- 3. ucase(str):把字符串str转成大写
select ucase('dwabuif') from dual;
-- 4. lcase(str):把字符串str转成小写
select lcase('FEAAFA') from dual;
-- 5. left(string2,length):查询字符串string2左数前length个字符
select left('wadnnfafaw',4) from dual;
-- 6. right(string2,length):查询字符串string2右数前length个字符
select right('aiglmwanf',4) from dual;
-- 7. length(string):求字符串占用字节数 **一个汉字占三个字节**
select length('igrsnafaf') from dual;
select length('安慰个看到你法分为') from dual;
select length(' ') from dual;
-- 8. char_length(str):求字符串占用字符数
select char_length('nfnaw') from dual;
select char_length('王发发挖方') from dual;
select char_length(' ') from dual;
-- 9. replace(str,search_str,replace_str):替换 将str中search_str替换为replace_str
select replace('wadafa','a','啊') from dual;
-- 10. substring(str,position[,length]):截取字符串 从position位置截取length个字符,如果没有length那就截取到最后
select substring('fwafwaf',2,2) from dual;
-- 11. lpad(str ,length , 填充字符) 在前面
select lpad('adw',10,'a') from dual;
-- 12. rpad(str ,length , 填充字符) 在后面
select rpad('adw',10,'a') from dual;
-- 1. now():表示当前日期和时间 时分秒
select now() from dual;
-- 2. year():获取日期的年份
select year('2019-3-1') from dual;
-- 3. month():获取日期的月份
select month('2019-3-1') from dual;
-- 4. last_day:获取月份的最后一天的日期
select last_day('2019-2-1') from dual;
select last_day('2008-2-1') from dual;
-- 5. datediff(date1,date2):两个日期相隔的天数 前面减后面
select datediff('2019-5-13','2014-3-21') from dual;
-- 6. timestampdiff(unit,datetime_expr1,datetime_expr2):unit 单位 后面减前面 可以按照单位进行时间差
select timestampdiff(day,'2014-3-21','2019-5-13') from dual;
select timestampdiff(hour,'2014-3-21','2019-5-13') from dual;
select timestampdiff(minute,'2014-3-21','2019-5-13') from dual;
-- 1. 以首字母大写,其他字母小写的方式显示所有员工的姓名
select concat(substring(ename,1,1),lcase(substring(ename,2))) from emp;
-- 2. 将员工的职位用小写字母显示
select lcase(job) from emp;
-- 3. 显示员工姓名超过5个字符的员工名
select ename from emp where char_length(ename) > 5;
-- 4. 用#来填充员工职位job的结尾处,按10个字符长度输出。RPAD
select RPAD(job,10,'#') from emp
-- 5. 去除字符串' hello world '两边的空格,并将单词间的空格改为','逗号。
select REPLACE(TRIM(' hello world '),' ',',') from dual;
-- 6. 以指定格式显示员工的奖金(格式:allen's comm is 300) 注:如果奖金为null显示为null,如smith 's comm is null。
select concat(ename,'\'s comm is ',if(comm is null,'null',comm)) from emp;
-- 7. 显示在一个月为30天的情况所有员工的日薪,忽略余数
select floor(sal/30) from emp;
-- 8. 显示员工在此公司工作了几个月
select timestampdiff(month,hiredate,now()) from emp;
-- 9. 显示所有12月份入职的员工
select ename from emp where month(hiredate) = 12;
-- 10. 显示员工的年薪。(sal+com)*12 需要上网查。
select (sal+if(comm is null,0,comm)) * 12 年薪 from emp;
-- 11. 显示所有员工的姓名、加入公司的年份和月份,并且按照年份升序排列
select ename,year(hiredate),month(hiredate) from emp order by year(hiredate);
-- 12. 求部门名称中带“S”字符的部门员工的工资合计、部门人数
select sum(sal),count(empno) from emp where instr(ename,'S') > 0;
-- 13. 查询任职日期超过30年的员工,显示时将月薪加10%后显示。
select floor(sal*1.1),ename from emp where timestampdiff(year,hiredate,now()) > 30;
MYSQL基础知识的复习3的更多相关文章
- MYSQL基础知识的复习2
1.修改表中的数据 update 表名 set 要修改的字段 where 条件;-- 如果修改多个字段那么字段和字段之间用逗号隔开 2.查询(很重要) 1.查询表中部分字段: select 字段名,字 ...
- MYSQL基础知识的复习1
数据库(是存放数据的仓库) 1.根据存储量以及安全性上来划分: 大型数据库:DB2 Oracle(毕业) Hbase 银行 公安局(不加班 没网) 移动 中型数据库:mysql sqlserver(. ...
- mysql基础知识大全
前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里作简单概括性的介绍,具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续会慢慢补充完善. 数据库和数据库软件 数据库是 ...
- mysql基础知识语法汇总整理(二)
mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...
- mysql基础知识语法汇总整理(一)
mysql基础知识语法汇总整理(二) 连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...
- MySQL 基础知识梳理
MySQL 的安装方式有多种,但是对于不同场景,会有最适合该场景的 MySQL 安装方式,下面就介绍一下 MySQL 常见的安装方法,包括 rpm 安装,yum 安装,通用二进制安装以及源码编译安装, ...
- MySQL基础知识:启动管理和账号管理
整理.记录常用的MySQL基础知识:时间久了,很多就忘记了. 操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL. ...
- MySQL基础知识:创建MySQL数据库和表
虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外 ...
- MySQL基础知识:Character Set和Collation
A character set is a set of symbols and encodings. A collation is a set of rules for comparing chara ...
随机推荐
- Jupyter Notebook在多个虚拟环境配置与使用
1 问题描述 使用Anaconda配置了包括Pytorch.Tensorflow等多个虚拟环境后,依然无法使用Jupyter Notebook选择不同的虚拟环境运行代码,问题如下图所示. 2 解决方法 ...
- MALL的学习笔记启动计划
基本网络文档:http://www.macrozheng.com/#/ 电子书: Spring: <Spring实战(第4版)> Springboot: <Spring Boot实战 ...
- Java连接MySQL数据库——含详细步骤和代码
工具:eclipse.MySQL.MySQL连接驱动:mysql-connector-java-5.1.45.jar 首先要下载Connector/J地址:http://www.mysql.com/d ...
- 史上最全java里面的锁
什么是锁 在计算机科学中,锁(lock)或互斥(mutex)是一种同步机制,用于在有许多执行线程的环境中强制对资源的访问限制.锁旨在强制实施互斥排他.并发控制策略. 锁通常需要硬件支持才能有效实施.这 ...
- 访问需要HTTP Basic Authentication认证的资源的c#的实现
string username="username"; string password="password"; //注意这里的格式哦,为 "usern ...
- JavaScript内置可用类型
string,number,boolean,null和undefined,object,symbol(ES6新语法)
- 变量提升(hoisting)
JavaScript的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行.这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting). con ...
- 单细胞分析实录(4): doublet检测
最近Cell Systems杂志发表了一篇针对现有几种检测单细胞测序doublet的工具的评估文章,系统比较了常见的例如Scrublet.DoubletFinder等工具在检测准确性.计算效率等方面的 ...
- 自动化运维工具-Ansible之2-ad-hoc
自动化运维工具-Ansible之2-ad-hoc 目录 自动化运维工具-Ansible之2-ad-hoc Ansible ad-hoc Ansible命令模块 Ansible软件管理模块 Ansibl ...
- synchronized关键字jvm实现及各种锁
一.synchronized的字节码执行过程 在java语言中存在两种内建的synchronized语法:1.synchronized语句:2.synchronized方法. 对于synchroniz ...