表A 表B
user_id name id user_id sorce
1 张三 1 1 78
2 李四 2 2
3 王五 3 5 80
想要查询表A中 没有分数或者表B中没有分数记录的,sql如何写?
select A.user_idid A.name FROM A LEFI JOIN B
ON A.user_id=B.user_id WHERE B.sorce='';
这个SQL不知道对不对?
1.表A中的user_id=3的王五,但王五的记录在B表中没有,我用左链接查询出来
2.sorce =''解决分数为空 查询出来
不太同意一楼的sql语句,第一是因为子查询,第二好像没有检索出没有分数记录的。
这是我自己本地测试的,用的是mysql,但是其实都差不多。先用表连接把两个表按照规定的id链接在一起,aid对应是你a表里的userid,aid2对应是你b表的userid,然后最后上图。图一是我的sql语句的结果,图二是我的a表,图三是我的b表。
这也只是解决的一种方式,我也不是很擅长后台数据库~~希望对你有帮助,也希望有更好的解决方案。因为我没有考虑性能问题。