易截截图软件、单文件、免安装、纯绿色、仅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 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

sql 语句总结

mysql :  将一个表的数据插入到newT 中
(newT 表须存在,且结构与select 语句对应的结构同  ,最好不用* 而是具体字段)    
       insert into newT select * from t1 where ...
也可以create table newT select f1,f2 from t1; (select into 的替代方法,my ......

Microsoft SQL Server 2005的排序规则冲突解决(转)

现象:
        在使用Microsoft SQL Server 2005时,要创建一个登录名,并为该登录名关联了一个数据库,但是在选择“安全对象”选项时,却出现了如题所示的错误。其他信息显示为:执行Transact-SQL语句或批处理时发生了异常(Microsoft.SqlServer.ConnectionInfo)。无法解决 ......

SQL Server性能优化的一些技巧


数据库性能优化涉及到很多方面,在数据库开发时可以通过一些基本的优化技巧提高数据库的性能:
1.原则上为创建的每个表都建立一个主键,主键唯一标识某一行记录,用于强制表的实体完整性。SQL Server 2005 Database Engine 将通过为主键列创建唯一索引来强制数据的唯一性。查询中使用主键时,此索引还可用来对数据进行快 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号