两个SQL语句间的区别
select * from a,b where a.id=b.id
select * from a right join b on a.id=b.id
这两个语句本质上有什么差别啊??
第一条语句只会返回满足条件a.id=b.id的行。
第二条语句会返回b表中所有的行,a表中没有相对应的行用null表示。
lz可以自己试一下。
select * from a,b where a.id=b.id
mysql 中等同于
select * from a inner join b on a.id=b.id
和
select * from a right join b on a.id=b.id
的判别显而易见了。
A left join(左连接)包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录。
同理,也存在着相同道理的 right join(右连接),即包含所有的右边表中的记录甚至是左边表中没有和它匹配的记录。
而full join(全连接)顾名思义,左右表中所有记录都会选出来。
相关问答:
小弟是个新手 现在有个问题一直不能解决
例如
procedure produce_proc
@p001 nvarchar(8000),
@p002 nvarchar(8000),
@p003 nvarchar(8000),
& ......
我EXCEL中一个单元格的数据如 "2009-01","8949-232"
将这个数据粘贴到PL/SQL中的一个表中后,数据确是成为了 2009-01,8949-232 ,把所有的""都没了,
如何弄呢?请大家试 ......
sql2005
select *from v_ddxx where d_sfsc='0' and (g_ssbm='1001' or g_ssbm='1002') and (xxf>0 and xxfwzf <>0 ),执行速度慢的要死,但是如果把(xxf>0 and ......
DateTime startTime=DateTime(em_1.Text)
DateTime endTime=DateTime(em_2.Text)
string sql
sql = dw_1.GetSQLSelect()+"Where (StartTime> '"+startTime+"') and (EndTime ......
情况是一张表(T)内,每条记录有一个类型字段,当按类型字段来分类查询并分页处理时
(表T内的类型是指向另一张类型表的一个ID值)
我想到了两种方式;
环境:PHP+MYSQL
1、PHP 先执行一条查询得到 ......