--------------输入一下指令,按下快捷键 F8

select * from emp;

--------------创建表格

create table 表名(

字段名1 数据类型1,

字段名2 数据类型2,

字段名3 数据类型3,

................ ,

字段名n 数据类型n

);

--------------数据类型

1)、整数 -> 整型 - number  或  number(3)

1 2 3 666

2)、小数 -> 浮点型 - number(长度,小数的位数)

price number(7,2)

2975.00   1.23

3)、字符串 -> 字符串的特点:用单引号引住

char(长度)  -> 固定长度

varchar2(长度)  -> 可变长度

4)、日期 date

-------------- 关键字:表名,字段名不能和关键字冲突

create table stu(

stuId number,

stuName varchar2(20),

age number(3),

sex char(3),

birthday date

);

select * from stu;

drop table stu;

--------------创建具有约束条件的表格

create table 表名(

字段名1 数据类型1 约束条件,

字段名2 数据类型2 约束条件,

字段名3 数据类型3 约束条件,

................  约束条件,

字段名n 数据类型n 约束条件

);

--------------约束条件

1、唯一:unique

2、非空:not null / null

3、默认:default 值

4、检查:check(检查的条件)

5、主键:primary key  :包含唯一和非空两个约束

6、外键:references 主键所在的表名(主键名) :外键的值要和主键对应

(外键值,必须包含在主键内)

-> 主外键的作用:保证数据的一致性。

create table t_class(

cId number primary key,

cName varchar2(20) unique

);

create table student(

stId number primary key,

stName varchar2(20) not null,

sex char(3) default '男' check(sex = '男' or sex = '女'),

birthday date default sysdate,

classId number references t_class(cId)

);

select sysdate from dual;

drop table t_class;

drop table student;

------------------------------------------

/*

商品售货系统设计案例

现有一个商品的数据、记录客户及其购物情况,由下三张表组成

商品goods(商品号goodsid,商品名goodsname,单价untiprice,商品类别category,供应商provider)

客户customer(客户号customerid,姓名name,住址address,电邮email,性别sex,身份证cardid)

购买purchase(客户号customerid,商品号goodsid,购买数量nums)

1、每个表格要建立主键或外键,客户的姓名不能为空值;单价必须大于0,购买数量必须在1到30之间;

电邮不能重复;客户的性别必须是男或女,默认是男。

*/

----------------------------------------------------------

create table goods(

goodsid number primary key,

goodsname varchar2(30),

untiprice number(7,2) check(untiprice > 0),

ccategory varchar2(20),

provider varchar2(30)

);

create table customer(

customerid number primary key,

cname varchar2(20) not null,

address varchar2(50),

email varchar2(30) unique,

sex char(3) default '男' check(sex='男' or  sex='女'),

cardid varchar2(18)

);

create table purchase(

customerid number references customer(customerid),

goodsid number references goods(goodsid),

-- nums number check(nums >= 1 and nums <= 30)

nums number check(nums between 1 and 30)

);

select * from stu;

--------------查看表结构

步骤:

1、新建一个command window

2、输入命令:desc 表名;

--------------增加表的字段

alter table 表名 add(

字段1 数据类型1 约束条件,

....

);

alter table stu add(shengao number(4,2) not null,tizhong number(5,2));

--------------修改表的字段

alter table 表名 modify(

被修改的字段1 数据类型1 约束条件,

....

);

alter table stu modify(tizhong number(7,2));

--------------删除表的字段

alter table 表名 drop column 字段名;

alter table stu drop column tizhong;

--------------删除整张表

drop table 表名;

drop table stu;

-------------------------------------------

create table 宿舍表(

宿舍号 char(6) primary key,

宿舍电话 number(7) check(宿舍电话 between 6330000 and 6339999)

);

create table 同学表(

学号 char(6) primary key,

姓名 varchar2(30) not null,

性别 char(3) check(性别 = '男' or 性别 = '女'),

年龄 number not null,

民族 varchar2(10) default '彝族' not null,

身份证号 varchar2(18) unique,

宿舍号 char(6) references 宿舍表(宿舍号)

)

-------------------------------------------

select * from emp;

select * from dept;

 

--------------1、全表查询

语法:

select * / 字段名1,字段名2,...,字段名n

from 表名;

* -> 表示一个表的所有字段

-------------------------------------------

select *

from emp;

---------

select empno,ename,sal

from emp;

--------------2、条件查询

-- 比较运算符: >  >=  <  <=  !=或者<>  = ,比较运算符两边的数据类型一样

语法:

select * / 字段名1,字段名2,...,字段名n

from 表名

where 查询条件;

-- 例:查询20号部门中全体员工的姓名、工资、和工种的有关信息。

select ename,sal,job

from emp

where deptno = 20;

-- 练习:查找出奖金超过其工资的雇员的姓名、工资、奖金和工种的信息。

select ename,sal,comm,job

from emp

where comm > sal;

--------------3、指定字段的重复值,只返回一行 -- 去重

语法:distinct 字段

select distinct deptno from emp;

-- 例:查找出20号部门中有多少种不同的工种。

select distinct job

from emp

where deptno = 20;

--------------4、多逻辑运算符  and  or   --- 用来连接多个条件

-- 例:查找出全部经理 和 第10号部门秘书的有关信息

select *

from emp

where job = 'MANAGER' or job = 'CLERK' and deptno = 10;

-- 查找出不是30号部门中的所有经理的所有信息。

select *

from emp

where job = 'MANAGER' and deptno != 30;

--------------5、多值比较运算符

-- 字段 between 值1 and 值2

-- 字段 in(指定的值)

-- 例:查找出工资在2000到3000之间的职工姓名、工种和工资

select ename,job,sal

from emp

where sal between 2000 and 3000;

-- 例:查询出全部秘书、分析员或推销员的姓名、工种、工资和所在部门号

select ename,job,sal,deptno

from emp

where job = 'CLERK' or job = 'ANALYST' or job = 'SALESMAN';

----------

select ename,job,sal,deptno

from emp

where job in('CLERK','ANALYST','SALESMAN');

-- 练习:查找出工资在2500到3500之外的职工姓名、工种和工资

select ename,job,sal

from emp

where sal not between 2500 and 3500;

-- 练习:查询出工资分别是1500,2500,3000的分析员或推销员的姓名、工种、工资和所在部门号

select ename,job,sal,deptno

from emp

where sal in(1500,2500,3000) and job in('ANALYST','SALESMAN');

--------------6、模糊查询

关键字: like

匹配符:

%  -> 匹配任意长度的字符串

'ABC%'  -> 表示匹配以ABC开头的任意字符串

'%ABC%'  -> 表示匹配包含ABC的任意字符串

'%ABC'  -> 表示匹配以ABC结尾的任意字符串

_  -> 匹配任意单个字符

A_C  ->表示配以A开头,C结尾的任意三个字符串

A__C  ->表示配以A开头,C结尾的任意四个字符串

AC_  ->表示配以AC开头的任意三个字符串

-- 例:查询出名字以"MA"开头的全部职工的姓名、工种、工资和部门号

select ename,job,sal,deptno

from emp

where ename like 'MA%';

-- 例:查询出名字以"SCO"开头的,长度为5位的全部职工的姓名、工种、工资和部门号

select ename,job,sal,deptno

from emp

where ename like 'SCO__';

练习:

1、查找出所有工种以'MANAG'开头的职工姓名、工种和工资

select ename,job,sal

from emp

where job like 'MANAG%';

2、查找出所有姓名以'ALLE'开头,且长度为5的职工姓名、工种和工资

select ename,job,sal

from emp

where ename like 'ALLE_';

--------------7、查找空值 is null  非空 is not null

select *

from emp

where comm is null;

select *

from emp

where comm is not null;

--------------8、排序   order by 字段 -->根据指定字段进行排序

语法:

select * / 字段 / 表达式

from 表

where 单条数据的过滤条件

order by 字段1/表达式 asc,字段2/表达式 desc;

-- asc 表示升序,默认为升序

-- desc 表示降序

-- order by 字段1 asc,字段2 desc -- 先根据字段1进行升序;

-- 如果字段1存在重复的值,则根据字段2降序                        

-- 例:计算每个销售人员的年度总报酬,并按总报酬由高到低顺序显示

select (sal+comm)*12 年度总报酬

from emp

where job = 'SALESMAN'

order by (sal+comm)*12 desc;

练习:

1、查找出工资高于1000元的职工的姓名、工种、工资和部门号,并按部门号由小到大排序显示

select e.ename,e.job,e.sal,e.deptno

from emp e

where e.sal > 1000

order by e.deptno;

2、查找出奖金超过本人基本工资3%的职工的姓名,工资,奖金,奖金与工资的比例,

并按其比例由高到低显示

select e.ename,e.sal,e.comm,e.comm/e.sal 奖金与工资的比例

from emp e

where e.comm > e.sal * 0.03

order by e.comm/e.sal desc;

3、按工种升序,而同工种按工资降序排列显示全部职工的姓名,工种,工资。

select e.ename,e.job,e.sal

from emp e

order by e.job,e.sal desc;

----------------------------------------------------------------------------------------------

select * from t_class;

select * from student;

--------------9、向表中添加数据

语法:

insert into 表名(字段1,字段2,...,字段n) values(值1,值2,...,值n);

insert into t_class(cid,cname) values(1,'软件测试班');

insert into t_class(cid,cname) values(2,'JAVA开发班');

insert into student(stid,stname,sex,birthday,classid)

values(1,'小王','男',sysdate,2);

insert into student(stid,stname,sex,classid)

values(2,'小吴','男',2);

insert into student(stid,stname,birthday,classid)

values(3,'小花',sysdate,1);

insert into student

values(4,'小米','男',sysdate,2);

rollback;  -- 撤销/回滚

commit;  -- 将数据永久保存到数据库 

-- 将具有日期格式的字符串转换为日期类型

语法:to_date('被转换的字符串','日期格式')

to_date('1997-07-01','YYYY-MM-DD')

--- (5,'小明','男','1997-07-01',1)

insert into student(stid,stname,sex,birthday,classid)

values(5,'小明','男',to_date('1997-07-01','YYYY-MM-DD'),1);

-- 练习:在emp表中,查找1981-05-01之前入职的员工信息

select *

from emp e

where e.hiredate < to_date('1981-05-01','YYYY-MM-DD');

--------------10、修改表中的数据

语法:

update 表名

set 字段1 = 值1,字段2 = 值2,...,字段n = 值n

where 单条数据的过滤条件;

update student

set stname = '老王'

where stname = '小王';

-- 将小花的性别插入对应的单元格

update student

set sex = '女'

where stname = '小花';

--------------11、删除表中的数据

语法:

delete 表名

where 单条数据的过滤条件;

delete student

where stname = '小王';

select * from t_class;

select * from student order by classid;

-- 练习:把cid为1的所有数据都删掉

/*

如果删除的数据涉及两张表,要先删除外键所在的表的数据,再删主键所在的表的数据

*/

delete student where classid = 1;

delete t_class where cid = 1;

-------------

truncate table 表名;

truncate table student;

truncate table t_class;

删除数据

delete:可以加where条件,数据可以回滚,删除速度慢

truncate:不可以加where条件,不数据可以回滚,删除速度快

drop:删除整个表

drop table student;

drop table t_class;

---------------------------------------------

select * from emp;

-------------- 12、聚合函数/统计函数/分组函数

count(*) -> 统计当前表格的行数

select count(*) from emp;

count(字段) -> 统计指定字段的非空行数

select count(comm) from emp;

-- 练习:统计emp表中,comm字段为空的行数

select count(*) from emp where comm is null;

select count(*)-count(comm) from emp;

avg(字段) -> 统计指定字段的平均值

select avg(sal) from emp;

---round(m,n)  精确到小数点的指定位数

select round(avg(sal),2) 平均值 from emp;

select round(avg(sal+nvl(comm,0)),2) 平均值 from emp;

sum(字段) -> 统计指定字段的和

select sum(sal) from emp;

-- nvl(m,n)  空值处理函数

select sum(sal+nvl(comm,0)) from emp;

min(字段) -> 统计指定字段的最小值

select min(sal) from emp;

max(字段) -> 统计指定字段的最大值

select max(sal) from emp;

----------

select count(*),count(comm),avg(sal),sum(sal),min(sal),max(sal)

from emp;

-- 例:计算emp表中公司职工的总人数及工种数

select count(*) 总人数,count(distinct job) 工种数

from emp;

-- 练习:计算全部销售员的年平均报酬。

select avg(sal)*12 年平均报酬

from emp

where job = 'SALESMAN';

--------------13、分组统计  group by 字段

select 字段 / 统计函数

from 表

where 单条数据的过滤条件

group by 字段1,字段2; -- 先按字段1分组,再在字段1内按字段2分组

-- 例:计算出公司支付给每个工种的总工资

select job,sum(sal)

from emp

group by job;

-- 例:计算每个部门中每种工种各有多少职工数。

select deptno,job,count(*)

from emp

group by deptno,job

order by deptno;

--- 求每个部门有多少职工

select deptno,count(*)

from emp

group by deptno;

-- 练习:统计各部门的人数。

select deptno,count(*)

from emp

group by deptno;

--- 对分组后的数据做过滤 having 分组后的过滤条件

select 字段 / 统计函数

from 表

where 单条数据的过滤条件

group by 字段

having 分组函数的比较表达式

order by 字段;

-- 例:查询各工种组的年平均工资,要求每个工种组至少在2人以上

select job,avg(sal)*12 年平均工资,count(*)

from emp

group by job

having count(*) > 2;

练习1:查询出至少有两名秘书的所有部门的部门号,并按人数降序排序。

select deptno,count(*)

from emp

where job = 'CLERK'

group by deptno

having count(*) >= 2

order by count(*) desc;

练习2:查询出所有经理和销售人员的年平均工资,并按年平均工资降序排

select job,avg(sal)*12 年平均工资

from emp

where job in('MANAGER','SALESMAN')

group by job

order by avg(sal)*12 desc;

select job,avg(sal)*12 年平均工资

from emp

group by job

having job in('MANAGER','SALESMAN')

order by avg(sal)*12 desc;

----------------------------------------------------------------------------------------------

--- 1、多表查询

-- 例:查找名字为"ALLEN"的职工所在的部门号、部门名和部门所在地

select d.deptno,d.dname,d.loc

from emp e,dept d

where e.deptno = d.deptno and e.ename = 'ALLEN';

-- 查询部门号是20,30,40的职工的员工编号,姓名,工资,部门所在位置。

select e.empno,e.ename,e.sal,d.loc

from emp e,dept d

where e.deptno = d.deptno and d.deptno in(20,30,40);

group by

having

order by

--- 查询的思路 ---

1、分析题目需求,确认查询的数据涉及哪些表;

2、如果查询的数据需要来源于多张,就要将表的相同字段在where后面用等于号连接起来;

3、如果需要对单条数据做过滤,就要将过滤条件追加到where字句后面,并用and连接;

4、如果需要对多组数据分别做统计,就要用到group by字句;

5、如果需要对分组后的数据做过滤,就要用到having字句;

6、如果需要对数据进行排序,就要用到order by字句。

-- 显示部门号为10的部门名、员工号和工资

select d.dname,e.empno,e.sal

from emp e,dept d

where e.deptno = d.deptno and d.deptno = 10;

-- 显示雇员名,雇员工资及所在的部门的名字,并按部门名排序

select e.ename,e.sal,d.dname

from emp e,dept d

where e.deptno = d.deptno

order by d.dname;

-- 显示平均工资高于2000的部门号和它的平均工资

select e.deptno,avg(e.sal)

from emp e

group by e.deptno

having avg(e.sal) > 2000;

-----------------------------------------------

select * from emp order by deptno;

select * from dept;

select e.*,d.*

from emp e,dept d

where e.deptno = d.deptno order by d.deptno;

--- 1、外连接:左连接,右连接  连接符:(+)

左连接:

select * / 字段 / 表达式 / 分组函数

from 表名1 表名1的别名, 表名2 表名2的别名

where 表名1的别名.字段 = 表名2的别名.字段(+);

--- 左连接

select e.*,d.*

from emp e,dept d

where e.deptno = d.deptno(+) order by d.deptno;

------------------------------------------------------------------------

右连接:

select * / 字段 / 表达式 / 分组函数

from 表名1 表名1的别名, 表名1 表名2的别名

where 表名1的别名.字段(+) = 表名2的别名.字段;

--- 右连接

select e.*,d.*

from emp e,dept d

where e.deptno(+) = d.deptno order by d.deptno;

-- 练习:显示出所有部门的编号、名称和其职工的姓名与工种。

select d.deptno,d.dname,e.ename,e.job

from dept d,emp e

where d.deptno = e.deptno(+);

-------------------------------------------------------------------------

select d.deptno,d.dname,e.ename,e.job

from dept d left join emp e on d.deptno = e.deptno;

select d.deptno,d.dname,e.ename,e.job

from dept d right join emp e on d.deptno = e.deptno;

-- 练习:列出无雇员的部门的情况。

select d.*

from dept d,emp e

where e.deptno(+) = d.deptno and e.empno is null;

---2、子查询/嵌套查询   子查询,需要用小括号括住

-- 例:查找出与“SMITH”在同一个部门工作的所有职工姓名及工资

select e.ename,e.sal

from emp e

where e.deptno = ('SMITH'所在的部门号);

--'SMITH'所在的部门号

select deptno

from emp

where ename = 'SMITH'

--

select e.ename, e.sal,e.deptno

from emp e

where e.deptno = (select deptno from emp where ename = 'SMITH');

----------

(1)、查找出工资比"SCOTT"工资高的职工的名字,工种,工资和所在的部门号,并按工资升序排序。

select e.ename,e.job,e.sal,e.deptno

from emp e

where e.sal > ("SCOTT"的工资)

order by e.sal;

-- "SCOTT"的工资

select sal from emp where ename = 'SCOTT'

----

select e.ename, e.job, e.sal, e.deptno

from emp e

where e.sal > (select sal from emp where ename = 'SCOTT')

order by e.sal;

(2)、查找出工资比"SCOTT"高,并且在"NEW YORK"工作的职工的有关情况。

select *

from emp e,dept d

where e.deptno(+) = d.deptno

and e.sal > ("SCOTT"的工资)

and d.loc = 'NEW YORK';

-- "SCOTT"的工资

select sal from emp where ename = 'SCOTT'

----

select *

from emp e, dept d

where e.deptno(+) = d.deptno

and e.sal > (select sal from emp where ename = 'SCOTT')

and d.loc = 'NEW YORK';

(3)、查找出具有最高月工资的雇员的姓名、工种和工资。

select e.ename,e.job,e.sal

from emp e

where e.sal = (最高月工资);

-- 最高月工资

select max(sal) from emp

----

select e.ename, e.job, e.sal

from emp e

where e.sal = (select max(sal) from emp);

(4)、查找出在"CHICAGO"工作的职工的姓名、工种和工资。

select e.ename,e.job,e.sal

from dept d,emp e

where e.deptno(+) = d.deptno and d.loc = 'CHICAGO';

---

select e.ename,e.job,e.sal

from emp e

where e.deptno = (在CHICAGO的部门号);

--在CHICAGO的部门号

select deptno from dept where loc = 'CHIGAGO'

---

select e.ename,e.job,e.sal

from emp e

where e.deptno = (select deptno from dept where loc = 'CHIGAGO');

--- 例:查找出部门10与部门30中工种相同的职工的姓名和工种。

select e.ename,e.job

from emp e

where e.deptno = 10 and e.job in(30号部门的工种);

-- 30号部门的工种

select distinct job from emp where deptno = 30

--

select e.ename, e.job

from emp e

where e.deptno = 10

and e.job in (select distinct job from emp where deptno = 30);

-----------------------------------

-- 查找出工资在1000到3500元之间的职工所在部门的所有人员的有关信息。

select e.*

from emp e

where e.deptno in (工资在1000到3500元之间的部门号);

-- 工资在1000到3500元之间的部门号

select distinct deptno from emp where sal between 1000 and 3500

-----

select e.*

from emp e

where e.deptno in

(select distinct deptno from emp where sal between 1000 and 3500);

-- 查找出工种在部门10中没有的其他部门职工的姓名、工种和工资信息。

select e.ename,e.job,e.sal

from emp e

where e.job not in(10部门的工种);

-- 10部门的工种

select distinct job from emp where deptno = 10

---

select e.ename, e.job, e.sal

from emp e

where e.job not in (select distinct job from emp where deptno = 10);

-- 查找出部门20中的工种相同的职工的姓名与工种。

select e.ename,e.job

from emp e

where e.deptno = 20 and e.job in(20号部门的相同工种);

-- 20号部门的相同工种

select job

from emp

where deptno = 20

group by job

having count(*) >= 2

-----

select e.ename, e.job

from emp e

where e.deptno = 20

and e.job in (select job

from emp

where deptno = 20

group by job

having count(*) >= 2);

-- 查找出10号部门中的工种与销售部门中任何职工工种相同的职工的信息。

select *

from emp e,dept d

where e.deptno(+) = d.deptno

and e.deptno = 10

and e.job in(销售部门的工种);

-- 销售部门的工种

select distinct job

from dept de,emp em

where de.deptno = em.deptno

and de.dname = 'SALES'

--------

select *

from emp e, dept d

where e.deptno(+) = d.deptno

and e.deptno = 10

and e.job in (select distinct job

from dept de, emp em

where de.deptno = em.deptno

and de.dname = 'SALES');

-- from 子查询

select * from emp;

select * from (select * from emp);

select * from (select empno,ename from emp);

---- 伪列:rownum -----

select rownum,e.* from emp e

--- 查询表的前10行

select rownum,e.* from emp e where rownum <= 10;

--- rownum不属于任何一个表

select e.rownum,e.* from emp e

--- 查询表的第5到第10行 -- rownum不能跨过1而存在

select * from (select rownum rn,e.* from emp e)

--

select * from (select rownum rn,e.* from emp e) t

where t.rn < 5;

--

select * from (select rownum rn,e.* from emp e) t

where t.rn between 5 and 10;

-- 练习:查询一个表的后5行

select * from (select rownum rn,e.* from emp e) t

where t.rn < 5;

select *

from (select rownum rn, e.* from emp e) t

where t.rn > (select count(*) - 5 from emp);

Oracle-常见的命令的更多相关文章

  1. 【原创】ORACLE常见使用问题解决

    ORACLE常见使用问题解决 一.安装了oracle客户端后,发现plsql客户端找不到之前已经配置过的TNS连接信息 或许大家再使用ORACLE软件的过程中,经常会遇到这样的问题: 问题现象描述: ...

  2. Data Base oracle常见错误及解决方案

    Data Base oracle常见错误及解决方案 一.TNS协议适配器错误: 原因: 此问题的原因都是由于监听没有配置好. 解决: 1.打开oracle工具Net Manager,删除服务及监听,重 ...

  3. Oracle手边常用命令及操作语句

    Oracle手边常用命令及操作语句 作者:白宁超 时间:2016年3月4日11:24:08 摘要:日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规操作. ...

  4. Oracle Tuning 基础概述01 - Oracle 常见等待事件

    对Oracle数据库整体性能的优化,首先要关注的是在有性能问题时数据库排名前几位等待事件是哪些.Oracle等待事件众多,随着版本的升级,数量还在不断增加,可以通过v$event_name查到当前数据 ...

  5. 常见linux命令释义(第八天)—— Bash Shell 的操作环境

    换了新公司,公司的领导很不错.自己感受比较多的地方是,自己的工作效率明显比以前高了.以前会对频繁变动的需求十分不耐烦,现在接到需求后会仔细的思考,进行整体构建.即使以后需求有变动,也能够比较轻易的在原 ...

  6. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

  7. Ubuntu下VSFTPD(六)(常见FTP命令及其功能) (

    常见FTP命令及其功能  FTP 命令 功能  FTP 命令 功能  ls 显示服务器上的目录 ls [remote-dir][local-file] 显示远程目录remote-dir,并存入本地文件 ...

  8. oracle中imp命令具体解释

    oracle中imp命令具体解释 Oracle的导入有用程序(Import utility)同意从数据库提取数据,而且将数据写入操作系统文件.imp使用的基本格式:imp[username[/pass ...

  9. oracle 11g常用命令

    1.监听启动监听lsnrctl start停止监听 lsnrctl stop 查看监听状态 lsnrctl status 2.启动用oracle用户进入su - oracle运行sqlplus命令,进 ...

  10. python datetime模块strptime/strptime format常见格式命令_施罗德_新浪博客

    python datetime模块strptime/strptime format常见格式命令_施罗德_新浪博客     python datetime模块strptime/strptime form ...

随机推荐

  1. Pycharm下安装Numpy包

    Numpy--Numerical Python,是一个基于Python的可以存储和处理大型矩阵的库.几乎是Python 生态系统的数值计算的基石,例如Scipy,Pandas,Scikit-learn ...

  2. linear-gradient,radial-gradient 渐变

    一.渐变效果 ->  线性渐变 方法: background-image: linear-gradient(direction, color-stop1, color-stop2, ...); ...

  3. brother b-PAC sdk开发包

    brother b-PAC sdk开发包 https://download.brother.com/welcome/dlfp100607/bsdkw32031eu.exe https://www.br ...

  4. Ubuntu下安装PIL

    Ubuntu下安装PIL 1)sudo apt-get install libjpeg-dev 2)sudo apt-get install libfreetype6-dev 3)sudo easy_ ...

  5. 「从零单排canal 03」 canal源码分析大纲

    在前面两篇中,我们从基本概念理解了canal是一个什么项目,能应用于什么场景,然后通过一个demo体验,有了基本的体感和认识. 从这一篇开始,我们将从源码入手,深入学习canal的实现方式.了解can ...

  6. 动力节点 mysql 郭鑫 34道经典的面试题

    DROP TABLE IF EXISTS `dept`; CREATE TABLE `dept` ( `DEPTNO` int(2) NOT NULL COMMENT '部门编号', `DNAME` ...

  7. 删库吧,Bug浪——我们在同一家摸鱼的公司

    那些口口声声, Bug越来越难写人的,应该盯着你们: 像我一样,我盯着你们,满眼恨意. IT积攒了几十年的漏洞, 所有的死机.溢出.404和超时, 像是专门为你们准备的礼物. 圈复杂度.魔鬼变量.内存 ...

  8. 【思考】URI和URL的区别?以及URL的结构

    URI = Universal Resource Identifier URL = Universal Resource Locator 在学习中,我们难免会遇到 URI 和 URL,有时候都傻傻分不 ...

  9. 在Ubuntu上实现人脸识别登录

    安装Howdy: howdy项目地址 sudo add-apt-repository ppa:boltgolt/howdy sudo apt update sudo apt install howdy ...

  10. QUIC/HTTP3 协议简析

    从 HTTP 的进化历史讲起,细说使用协议的变迁,了解原因发现问题,解码 QUIC 在 HTTP3 中的支撑作用,共同探讨 HTTP3 的未来. HTTP.HTTP2 和 HTTP3 先和大家来回顾一 ...