A表
room_id room_name staff_id
10 room1 001
11 room2 002B表
staff_id staff_name del_flg
001 zhang 0
002 wang 1select A.room_id,A.room_name,B.staff_name from A left join B ON A.staff_id=B.staff_id我想检索的时候,不检索出来B表del_flg=1的数据,改成
select A.room_id,A.room_name,B.staff_name from A left join B ON A.staff_id=B.staff_id
WHERE B.del_flg=0就变成直连了,没办法我加入了子查询
select A.room_id,A.room_name,B.staff_name from A left join (select staff_id,staff_name from B where del_flg=0)as B ON A.staff_id=B.staff_id请问能不使用子查询吗?B表的del_flg=0的条件应该怎么加?
room_id room_name staff_id
10 room1 001
11 room2 002B表
staff_id staff_name del_flg
001 zhang 0
002 wang 1select A.room_id,A.room_name,B.staff_name from A left join B ON A.staff_id=B.staff_id我想检索的时候,不检索出来B表del_flg=1的数据,改成
select A.room_id,A.room_name,B.staff_name from A left join B ON A.staff_id=B.staff_id
WHERE B.del_flg=0就变成直连了,没办法我加入了子查询
select A.room_id,A.room_name,B.staff_name from A left join (select staff_id,staff_name from B where del_flg=0)as B ON A.staff_id=B.staff_id请问能不使用子查询吗?B表的del_flg=0的条件应该怎么加?
WHERE B.del_flgM<>1
这样不就可以了~
WHERE B.del_flg<>1
room_id room_name staff_id
10 room1 001
11 room2 002B表
staff_id staff_name del_flg
001 zhang 0
002 wang 1我想得到如下数据:
room_id room_name staff_name
01 room1 zhang
11 room2 (空)因为Bwang的del_flg=1了
+---------+-----------+------------+
| room_id | room_name | staff_name |
+---------+-----------+------------+
| 10 | room1 | zhang |
| 11 | room2 | NULL |
+---------+-----------+------------+
2 rows in set (0.00 sec)
WHERE B.del_flg=0
你自己写的不是可以么?