MySql查询语句介绍,多表联合查询
mysql在网站开发中,越来越多人使用了,方便部署,方便使用。我们要掌握mysql,首先要学习查询语句。查询单个表的数据,和多个表的联合查询。
上一篇写了【MySql查询语句介绍,单表查询】,下面以一些例子来介绍下多表联合查询。
操作方法
(01)首先看下我们例子用到的数据表,一个student学生表,有id列,name列,class_id列等等。和一个Class班级表,有id列和name列,如图
(02)我们要查询学生数据,并要显示这个学生所在的班级,则要联合二个表的查询了。用 inner join来联合二个表。sql: select , , c.`name` as '班级' from student as sinner join class as c ON = s_id limit 10
(03)讲解下上面的sql语句, select里的【as '班级'】,的‘as’是为了给这个列加一个别名,例子中的‘班级’。from student as s 里的这个 as是为表 student加一个别名,例子中的s。为什么要加别名呢,是为了简化引用,如果不加别名,就要用表的全名去限制列名。, 都是指student表的列,因为用的是别名s来限制列名 是指class表的列,因为是用 别名c来限制列名。
(04)上面说的为什么表要加别名,那是因为二个表都有 id列和name列,直接用 select id, name这样的语句,是会报错的,因为这个语句不知道你需要的id, name究竟是查询的是哪个表的id, 和name.
(05)除了用 inner join来关联二个表的数据,还可以用 left join来关联,sql: select , , c.`name` as '班级' from student as sleft join class as c ON = s_id order by desc limit 10
(06)现在的数据,看不出 inner join和 left join的区别。我们新建一个学生数据, 把class_id设置为 7, class表里没有的id。如图
(07)我们再次用上次的sql查询数据,select , , c.`name` as '班级' from student as sleft join class as c ON = s_id order by desc limit 10结果如图,可以看到班级为空的。
(08)如果是用 inner join呢,select , , c.`name` as '班级' from student as sinner join class as c ON = s_id order by desc limit 10结果如图,可以看到没有 id=27的学生数据。
(09)从上面的结果比较可以知道, 都是通过 class_id来联合表,inner join是联合二个表的数据,二个表都必须符合class_id的数据才显示。left join是左联合,左边的表的数据都显示,右边join的表有符合class_id数据的,就显示对应的数据,没有符合的,比如上面的 class_id=7的,就会显示空数据。
-
CAD如何标注倒角
我们在CAD里进行标注时,会对倒角进行标注,下面我们就一起来看看在CAD里如何对倒角进行标注的吧。操作方法(01)在桌面上双击CAD的快捷图标,打开CAD这款软件,进入CAD的操作界面,如图所示:(02)在该界面按下Ctrl+O键打开选择文件对话框,在该对话框打开我们需要标注的图形文件,...
-
怎么在电脑中放入光盘
还是有很多老年人习惯使用光碟,怎么在电脑中放入光碟,小编给你指南。操作方法(01)放入光碟的设备叫做光驱,光驱长这个样子,如图所示:(02)按下图中所示的按钮,光驱架会弹出来。如图所示:(03)光驱架弹出来后,就可以将光碟放入光驱里,然后重新按下光驱弹出的按钮。如图所示:(04)稍等...
-
斐讯(phicomm)无线路由器怎么设置
无线路由器的种类有很多,WiFi对人类生活越来越重要,每种无线路由器的设置不同,小编在这里给大家介绍一下斐讯(phicomm)无线路由器怎么设置。操作方法(01)将插在电脑上的网线拔掉,用额外准备的网线一头连接电脑一头连接路由器数字口,下面的“LAN口”都可以,把刚刚从电脑...
-
捷渡D620行车记录仪更换电池
三年前中奖的捷渡D620,一直放在柜子里,前两天拿出来用,日期、时间设置完后,停车熄火时间后重新发动车子,显示回原来出厂设置的时间(2012年1月1日)。经过查找资料,确认捷渡D620有内置电池,判断是电池失效。某宝买了电池,直接拆机更换。操作方法(01)用吹风筒热风模式拼命吹记...