2 u013179958 u013179958 于 2016.04.15 23:21 提问

对SQL语句级联查询的一些理解,各位进来看我说的对不对?
sql
 外联是通过n去查询1
 例如select * from A left join B on B.id=A.bid
 内联是通过1去查询n
 例如select * from A,B

 自己的一些理解

4个回答

caozhy
caozhy   Ds   Rxr 2016.04.15 23:27
已采纳
 不是,left join和inner join的区别是,left join会取得左表有记录,但是右表没有的。比如
左表:
id 省
1 河北
2 山东
3 辽宁
右表
省id 城市
1 石家庄
1 邢台
2 青岛
2 济南
那么leftjoin得到
1 河北 石家庄
1 河北 邢台
2 山东 青岛
2 山东 济南
3 辽宁 null
innerjoin得到
1 河北 石家庄
1 河北 邢台
2 山东 青岛
2 山东 济南
caozhy
caozhy 回复据说名字太长不容易被发现: join不管1还是N,都是一样的。看你两个表哪个写前哪个写后。
2 年多之前 回复
u013179958
u013179958 回复caozhy: 那如何通过 SELECT * FROM 省 来查询到下面的市呢? (注意:我问的是如何通过1的一端去查询N的一端)
2 年多之前 回复
xiaokonglong93
xiaokonglong93 回复据说名字太长不容易被发现: 只要“市”这张表里有“省”表的id,就可以啊
2 年多之前 回复
caozhy
caozhy 回复据说名字太长不容易被发现: 两者都可以查询1-1 1-n n-1
2 年多之前 回复
u013179958
u013179958 假设有省、市,两张表,它们的关系是省(1)、市(n),我可以通过省(1)去查询市(n)吗?
2 年多之前 回复
renwotao2009
renwotao2009   2016.04.16 08:30
o527883184
o527883184   2016.04.16 12:41

分类
内联和外联
外联包含 左右链接 和 full out join

o527883184
o527883184   2016.04.16 12:43
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
sql语句级联查询
问题:想了半天终于解决了这个问题,mysql中的级联查询非诚好使!SELECT t.*, x.*, w.* FROM file_attribute_info t LEFT JOIN file_basic_info x ON t.file_extra_id = x.file_extra_id LEFT JOIN weixin_pub_user w ON t.weixin_user_id = w....
ORACLE 数据库的级联查询 一句sql搞定(部门多级)
在ORACLE 数据库中有一种方法可以实现级联查询   select  *                //要查询的字段 from table              //具有子接点ID与父接点ID的表  start with selfid=id      //给定一个startid(字段名为子接点ID,及开始的ID号) connect by prior self
hibernate级联查询执行n+1次sqlt语句问题(内含解决办法,优化方式)
如果当SQL数据库中select语句数目过多,就会影响数据库的性能,如果需要查询n个Customer对象,那么必须执行n+1次select查询语句,下文就将为您讲解这个n+1次select查询问题。 在Session的缓存中存放的是相互关联的对象图。默认情况下,当Hibernate从数据库中加载Customer对象时,会同时加载所有关联的Order对象。以Customer和Order类为例,
级联查询sql
select [ ||  t1.audit_type || ] || t2.name  from audit_data_task_def t1  left join code_dict t2on t2.catalog = T_AUDIT_METHOD and t1.audit_type = t2.code;select [ ||  t1.audit_type || ] ||
十步完全理解 SQL--很好的一篇关于sql的文章
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。 我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然对它头疼不已的朋友,所以本文是为了以下读者而特地编写的: 1、 在工作中会用到 SQL
MySql 同表级联查询
一张表的机构如下:idpidname1 总机构21分机构131分机构2要生成如下查询结果:idpidnamesubname1 总机构 21分机构1总机构31分机构2总机构SQL语句如下:SELECT a.id, a. NAME, b. NAME AS sub_name FROM teast a LEFT JOIN teast b ON b.id = a.pid GROUP BY a.id...
全国省市级联关系表sql语句
DROP TABLE IF EXISTS `province`; CREATE TABLE `province` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHAR
ORACLE 数据库的级联查询 一句sql搞定(例:部门多级,类型多级)
oracle中,有时候会遇到批量操作多级部门下的数据或者是多级类别下文档,一句sql搞定想要查询的数据,并对其增删改操作,如下: 查询某条数据下是否有子节点: select *          //要查询的字段 from table      //具有子接点id和父接点id的表 start with childid=id数据           //给定一个开始查询的id(字段名
常用的SQL语句大全-多表操作
常用的SQL语句大全-多表操作
sql语句_自连接_外连接_左连接_子查询_排序_分组
数据库 sql语句 分为DDL,DCL,DLL 1),DDL,data define language: 新建一个数据库 ceate创建 alter修改 drop删 这三条语句,在下面几个组件中,都可以用得到 数据库分为下面几个组件 a,数据库,datab