Oracle基础,oracle的SQL语句中的(+)是干什么用的?
Oracle基础,oracle的SQL语句中的(+)是干什么用的?Oracle基础,oracle的SQL语句中的(+)是干什么用的?Oracle基础,oracle的SQL语句中的(+ )是干什么用的?都说这基础知识才是最要人命的,我现在是深有体会,在考试365网站的找到我想要的Oracle模拟题,几个编程题都是因为这个(+)让我把题目给做错了,所以想要问问各位 ,请各位帮我解答~~~~ 谢谢了~~~
oracle特有的左外联书写方式,当然你也可以用传统的通用的左外联,比如给你举个例子 SELECT AS 姓名, ade AS 分数, d AS 课程名 FROM tbl_student s LEFT OUTER JOIN tbl_grade g ON s.StudentId= d LEFT OUTER JOIN tbl_class c ON d=c.ClassId 它跟下面等价 SELECT AS 姓名, ade AS 分数, assname AS 课程名 FROM tbl_student s,tbl_grade g,tbl_class c WHERE (s.StudentId= d(+)) AND ( d=c.ClassId(+))
叫oracle的左连接或右连接 以下是解释,自己研究下: ------------------------------------------------------------------- 数据表的连接有: 1、内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现 2、外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表都不加限制) 3、自连接(连接发生在一张基表内) select udentno, udentname, assname from students a, classes b where assid(+) = assid; STUDENTNO STUDENTNAM CLASSNAME ---------- ---------- ------------------------------ 1 周虎 一年级一班 2 周林 一年级二班 一年级三班 以上语句是右连接: 即"(+)"所在位置的另一侧为连接的方向,右连接说明等号右侧的所有 记录均会被显示,无论其在左侧是否得到匹配。
也就是说上例中,无 论会不会出现某个班级没有一个学生的情况,这个班级的名字都会在 查询结构中出现。 反之: select udentno, udentname, assname from students a, classes b where assid = assid(+); STUDENTNO STUDENTNAM CLASSNAME ---------- ---------- ------------------------------ 1 周虎 一年级一班 2 周林 一年级二班 3 钟林达 则是左连接,无论这个学生有没有一个能在一个班级中得到匹配的部门号, 这个学生的记录都会被显示。
select udentno, udentname, assname from students a, classes b where assid = assid; 这个则是通常用到的内连接,显示两表都符合条件的记录 总之, 左连接显示左边全部的和右边与左边相同的 右连接显示右边全部的和左边与右边相同的 内连接是只显示满足条件的!。
答:sql server相对简单易用,ORACLE上手较难,但熟悉理解后也能用得很好,我现在就主要用ORACLE 数据库的开发一般分为前台应用程序和数据库后台程序开...详情>>
答:我建议你去--天下网吧联盟 这里面都是网吧业主和网管交流的论坛,你可以自己注册一个用户进去看看,你可以和他们交流也可以寻求他们的帮助,我想没有你解决不了的问题,...详情>>
答:格式化文本区域的段落标记,用于规定文本和层的属性和位置等。比如: 新浪网 用来规定 新浪网 这三个字居中显示。 文本中心(CENTER)、左(LEFT)或右(R...详情>>