mysql两个表提出不同的数据

mysql两个表提出不同的数据,第1张

那是给表起的别名。

这样,假设 表1 的名 t1, 表2的名 为 t2

select t1.name from t1,t2 where t1.name != t2.name //表1中有的,表2中没有的

上一个语句的 t1.name 改成 t2.name 就是表2中有的 表1中没有的。

select t1.name from t1,t2 where t1.name = t2.name // 两者相同的

select * from zz_baojie where sid =381 union select * from zz_demos where sid =423

会报错,原因就像你自己说的,两张表的字段数不同

作为程序员,其实尽量少用select * from ... 因为这种写法在后期维护的时候存在很大的隐患

正确的做法就是 select 后面跟具体的字段名, 虽然这么写比一个星号来的费时费力,但对于程序来说是有百利而无一害的

select t1.*, t2.*

from 真实表 t1 full join 临时表 using (id) //using也可写成on t1.id=t2.id

where t1.f!=t2.f or (t1.f is null and t2.f is not null) or (t1.f is not null and t2.f is null)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7539155.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存