数据库中两张表的各种连接方法
来源:互联网 发布:软件评测师招聘 编辑:程序博客网 时间:2024/05/17 22:14
今天遇到了如下的问题,在CSDN上提问
查询语句如下:
SELECT
A.CameraID, A.CryptMode, A.CameraName, B.CameraID AS LeftCameraID
FROM
C001_Camera A LEFT JOIN C002_Control B
ON
B.CameraID=A.CameraID
WHERE
(A.ControlerID IS NOT NULL AND A.ControlerID != '')
ORDER BY
CAST(A.CameraID as SIGNED INTEGER)
结果中
A.CameraID为00006,
LeftCameraID为null
可是在上面不是有B.CameraID=A.CameraID一句了吗?怎么他们两个的值不一样呀?
问题解决后我才知道这是SQL语句中最基础的一个问题,哎!
那就总结一下吧:
cross join:是笛卡儿乘积,在没有任何条件约束下就是一张表的行数乘以别一张表的行数。
left join:返回“表名1”的全部行,对于“表名2”中,不满足on条件的记录用空值替换。
rigth join:返回“表名2”的全部行,对于“表名1”中,不满足on条件的记录用空值替换。
full join:返回两张表中的所有记录,对于不满足on条件一端的记录用空值替换。
inner jon:只返回两张表中都满足on条件的记录
- 数据库中两张表的各种连接方法
- 各种数据库的连接方法
- 各种数据库的连接方法
- 各种数据库的连接方法
- 各种数据库的连接方法
- 各种类型的数据库的连接方法
- 用ASP连接各种数据库的方法
- 各种数据库的JDBC连接方法
- 用ASP连接各种数据库的方法
- 用ASP连接各种数据库的方法
- Quicktest professional 各种数据库的连接方法
- Java连接Oracle数据库的各种方法
- ASP连接各种数据库的方法
- jsp连接各种数据库的方法
- c# 连接各种数据库的方法
- c#连接各种数据库的方法
- ASP连接各种数据库的方法
- Java连接Oracle数据库的各种方法
- 为ClipX设置粘帖热键(Alt+C)
- java reflection part 2
- 使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法(转)
- 最近在为界面库中增加一个单独的换肤功能,自己记录下GDI渐变色的使用方法
- C++Builder下利用TImage制作二维条码PDF417打印控件(五)
- 数据库中两张表的各种连接方法
- ASP.NET 应用程序中的服务器错误 解决方法一则
- 转载:30 Minutes Flex Test-Drive for Java Developers
- Tuxedo SALT读书笔记
- Dreamweaver制作图片多个链接
- 程序员必看之文章
- Afxtempl.h 254 产生的原因
- 影音播放器
- 【转总】Microsoft Platform SDK 选择及在vc++6.0中的配置