SQL第十三章内连接

来源:互联网 发布:cygwin 连接linux 编辑:程序博客网 时间:2024/06/08 13:54
<html><head><title>第十四章 外连接</title></head><style>p{font-size:1cm;color:red;align:center}</style><body><pre><p>第十四章 外连接</p>内连接可以删除原表中的一些行。外连接可以保留这些行中的一部分。<p>第一节 外连接派生于内连接</p>外连接有三种类型:左外连接,右外连接,全外连接左外连接 :添加回从第一个表中删除的所有行。null被入入其他表的列中。右外连接:添加从第二个表中删除的所有行。第一个表匹配行所在的列设为null.全外连接 :添加回了从两个表中删除的所有行。左外连接:select a.*,b.*from twos aleft outer join threes bon a.number_2=b.number_3ouder by a.number_2;右外连接 只是把左外连接中的left改为right全外连接是把左外连接和右外连接用union连接起来。union简介两个表将一个表的行添加到另一个表中,同时两个两被组合到一起,形成一个单表。两个表的列数必须相同,而且这些列的数据类型的顺序也必须相同。重复的行将被删除。只能有一个order by子句。而且 它必须放在最后一行。列别名在第一个select语句中指定。<p>按顺序全外连接</p>任务:创建twos表和threes表的全外连接,创建一个按照数字顺序排列行的列。select a.*,b.*,nz(a.number_2,b.number_3)*1 as sort_ort_orderfrom twos aleft outer join threes bunionselect c.*,d.*,nz(c.number_2,d.number_3)*1from twos cright outer join threes don c.number_2=d.number_3order by sort_order;任务:表exl203a包含有从1到100的数,其中缺少一部分数字,也有一部分数字出现多次。找出所有缺少和重复的数字。并计算每个这样的数字出现的次数。对缺少的数字计算 他们出现的次数select a.n,b.n,count(b.n)from numbers_1to_100 aleft outer join ex1203a bon a.n=b.ngroup by a.n,b.nhaving not(count(b.n)=1)order by a.n;用两列或多列进行比较。找出secl412a中有,secl412b表没有的行。select a.first_col,a.second_col,b.first_col,b.second_colfrom sec1412a aleft outer join sec1412b bon a.first_col=b.first_coland a.second_col=b.second_colwhere b.first_col is null    先执行外连接,。order by a.first_col,a.second_col;</pre><hr align=left size=3 width=80% color=green><a href="首页.html">返回首页</a></body></html>

0 0
原创粉丝点击