"查询存在的id":存在就返回1,没有任何数据就返回0selectexists(select id
from 表
);"查询员工id,条件必须存在id为100的员工":
存在就返回1,输出(这里输出是输出所有id,不是id只是100的,exists只是返回1或0,不会筛选掉id!=100的数据)
没有任何数据就返回0,啥也不输出(这就真不输出了,只要数据中没有id=100的,就什么也不输出)select id
from 表
whereexists(select id
from 表
where id =100);
主要查询两个没啥关联的表字段,查询表中的一些数据;
查询的条件:多个表查询的字段格式一样,
比如A的id,B也查询类型id的字段,A查询两个字段,B也一定是查询两个字段且格式差不多
否则,名字在id的位置,id在name的位置,不好看
"查询表A中的id,name,和表B中的id,name":union,默认去重
select id,name from A
unionselect t_id,t_name from B
"查询表A中的id,name,和表B中的id,name":unionall,不去重
select id,name from A
unionallselect t_id,t_name from B
"错误情况": 不会报错没也会显示,但是id位置出现name就没意义了
select id,name from A
unionselect t_name,t_id from B
"错误情况": A是select两个字段,Bselect三个字段,直接报错
select id,name from A
unionselect t_name,t_id,t_age from B