我想只显示可用的时间,以实现我正在尝试进行此查询
select * from agenda right join tbl_hora on agenda.hora_id = tbl_hora.id_hor where agenda.hora_id is null and medico_id = 40 and evento_inicio = '2012-05-05';
但是,如果我从medico_id和evento_inicio中删除where条件,它会检索0行,它会显示所有行,我怎样才能使查询显示可用时间。
Pd积。议程表是空的,因为是一个制作和预约的ajax调用。
答案 0 :(得分:0)
来自议程的在agenda.hora_id = tbl_hora.id_hora上加入tbl_hora
这意味着从议程表中选择仅它的hora_id列在tbl_hora
中匹配的行以及来自tbl_hora表的所有行
其中agenda.hora_id为空
并在加入 之后从结果中选择agenda.hora_id
为空的行。
这意味着你将永远得到0结果除非议程中有一行.hora_id
列为空且也 tbl_hora中的一行是.id
列也为null
您需要删除where agenda.hora_id is null
并使用您搜索的条件