易截截图软件、单文件、免安装、纯绿色、仅160KB

sql 表连接

TA:
1,WANG
2,ZHANG
4,LI
TB:
1,100
2,200
3,400
1.left join 左连接--以左表为基准,右表中没值的,在结果集中以null值代替。(select * from TA left join TB where TA.ID=TB.ID)
   1,WANG,100
   2,ZHANG,200
   4,NULL
2.right join 右连接--以右表为基准,左表中没值的,在结果集中以null值代替。(select * from TA right join TB where TA=TB)
   1,WANG,100
   2,ZHANG,200
   3,NULL,400
3.inner join 内连接--查询左右表中都有键值内容做为结果集。 (select * from TA inner join TB where TA=TB)
   1,WANG,100
   2,ZHANG,200
  备注: 内连接简写:select * from TA,TB WHERE TA.ID=TB.ID
【笛卡尔积】:
使用交叉联接
没有 WHERE 子句的交叉联接将产生联接所涉及的表的笛卡尔积。第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。下面是在sqlserver查询分析器中测试的结果:
select * from TA cross join TB 
--下面的是另一种写法
select * from TA ,TB 
   1,WANG,100
   2,ZHANG,100
   4,NULL,100
   1,WANG,200
   2,ZHANG,200
   4,NULL,200
   1,WANG,400
   2,ZHANG,400
   4,NULL,400
即:以左边的表为准,前边一张表的记录分别与后一张表的每条记录结合。
如果将两张表反过来写select * from TB , TA 或者select * from TB cross join  TA
   1,100,WANG
   2,200,WANG
   3,400,WANG
   1,100,ZHANG
   2,200,ZHANG
   3,400,ZHANG
   1,100,LI
   2,200,LI
   3,400,LI
笛卡尔积的结果可能会产生重复记录。
TA:
    1,WANG
    2,ZHANG
    3,NULL
   
 TB:
     1,100
     2,200
     3,NULL
     4,NULL
TA*TB
SELECT * from TA,TB B(或SELECT * from TA CROSS JOIN TB)
1,WANG,100
2,ZHANG,100
3,NULL,100
1,WANG,200
2,ZHANG,200
3,NULL,200
1,WANG,


相关文档:

SQL Server2005 远程访问配置

       从网络上看到不少关于数据库远程访问配置的文章,给我的大体印象就是配置过程复杂冗余,有不少还是错误的配制方法,大多数都让人感觉费解,鉴于此,我自己根据实际操作,写了一个数据库远程访问的配置方法,力求简单有效。有对下面配置有疑问的可以留言,我将作出回答。
1. &nb ......

SQL标识值 (转)

@@IDENTITY:返回最后插入的标识值的系统函数。
SCOPE_IDENTITY:返回插入到同一作用域中的标识列内的最后一个标识值。一个范围是一个模块:存储过程、触发器、函数或批处理。因此,如果两个语句处于同一个存储过程、函数或批处理中,则它们位于相同的作用域中。
IDENT_CURRENT:返回为指定的表或视图生成的最后一个标识值 ......

SQL Server性能优化的一些技巧


数据库性能优化涉及到很多方面,在数据库开发时可以通过一些基本的优化技巧提高数据库的性能:
1.原则上为创建的每个表都建立一个主键,主键唯一标识某一行记录,用于强制表的实体完整性。SQL Server 2005 Database Engine 将通过为主键列创建唯一索引来强制数据的唯一性。查询中使用主键时,此索引还可用来对数据进行快 ......

从【各大软件公司笔试压轴题】学习SQL语句

从博客园中看到一篇文章,介绍大软件公司面试时常常会出的两道SQL题(见附录)。
我觉得受益很多,在此之前,我一直觉得,SQL2008似乎提供了这方面的支持,但更低的版本,包括2005,非游标做不出来(水平够菜)。总结心得如下:
1、    强大的group by
1
 select stdname,
2
 isnull(s ......

SQL 命令集锦

这部分包含那些 PostgreSQL 支持的 SQL 命令的信息.这里的 "SQL" 就是该语言通常
的含义; 每条命令的与标准有关的兼容性的信息可以在相关的参考页中找到.
Table of Contents
ABORT --  退出当前事务
ALTER GROUP --  向组中增加用户或从组中删除用户 
ALTER USER --  改变数据库用户帐号.
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号