on条件与where条件的区别
on条件与where条件的区别是:
on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有leftjoin的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。
在on后面加条件仅适合用于leftjoin(rightjoin未测,innerjoin与where类似)。
不考虑where条件下,leftjoin会把左表所有数据查询出来,on及其后面的条件仅仅会影响右表的数据(符合就显示,不符合全部为null)。
where后面加条件与左连接本身无关,影响的是连接产生后的数据。
所以左连接关注的是左边的主表数据,不应该把on后面的从表中的条件加到where后,这样会影响原有主表中的数据。
附条件与附期限劳动合同的区别
附条件和附期限都属于法律行为的附款,是指当事人对于法律行为效果的发生或消灭所加的限制。
我国法律规定:民事法律行为可以附条件。附条件的民事行为,如果所附的条件是违背法律规定或者不可能发生的,应当认为该民事行为无效。
《合同法》第45条规定:当事人对合同的效力可以约定附条件。附生效条件的合同,自条件成就时生效。附解除条件的合同,自条件成就时失效。当事人为自己的利益不正当地阻止条件成就的,视为条件已成就;不正当促成条件成就的,视为条件不成就。
第46条规定:当事人对合同的效力可以约定附期限,附生效期限的合同,自期限届至时生效。附终止期限的合同,自期限届满时失效。
所谓条件,是指当事人以将来客观上不确定的事实,作为决定法律行为效力的附款。
|on条件与where条件的区别
on条件与where条件的区别 法律 附条件与附期限劳动合同的区别