Blogger Information
Blog 75
fans 0
comment 0
visits 55269
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
小猿圈Mysql之多表查询
聆听的博客
Original
559 people have browsed it

Mysql多表查询刚学数据库的朋友们,感觉涉及到一个表还好说,多表的话就感觉有点复杂了,小猿圈这篇详解一下mysql数据库的多表查询,希望朋友们在我这学到别的文章学不到的东西。

多表查询

实例

mysql支持的a是SQL99标准的连接查询,并不支持oracle公司的外连接查询,

但是支持oracle等值查询,不等值查询,自连接查询,子查询(只要不是外连接(+)都支持)

oracle也支持SQL99标准的连接查询

运行实例 »

点击 "运行实例" 按钮查看在线实例

内连接

实例

--等值查询

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

from emp e

inner join dept d

on e.deptno=d.deptno;

--简单而言:就是将oracle多表查询语法中的逗号换成inner join,

  where中的查询条件放在on后面,强调on后面不单单可以是连接条件也可以是查询条件

--不等值查询

select e.empno,e.ename,e.sal,s.grade

from emp e

inner join salgrade s

on e.sal>=s.losal and e.sal<=s.hisal;

左外连接(右外连接--right join)

select d.deptno,d.dname,count(e.empno)

from dept d

left join emp e

on d.deptno=e.deptno

group by d.deptno, d.dname

--左外连接要注意,想全部显示那个表的数据,就把那个表作为基表,

  例如想显示dept表中的40号部门,所以dept就是基表,这个oracle中的(+)相反。

查看当前数据库的字符集

--show variables like 'character%';

mysql中的滤空函数

--ifnull(字段名,想要的值)

--mysql没有nvl()函数

mysql中的字符串连接

--mysql不支持oracle中的"||"连接符号

--mysql支持oracle中的concat()连接函数

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

mysql编译

--在linux64位场景下,编译mysql共享库需要更多的共享库文件

-ldl:linux下的动态库文件

-lpthread:多线程共享库文件

-lm:数学函数共享库

-stdc++:mysql用到了部分c++函数,需要链接c++的共享库

-lrt:时间共享库函数

运行实例 »

点击 "运行实例" 按钮查看在线实例

linux32位场景下可能没有问题

讲解很详细吧,希望大家看完这篇文章能自己在电脑上练习一遍,真正可以消化,真正可以转变为自己的知识,这篇就到这里了,希望大家对小猿圈文章的喜爱。

Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post