我有三个表,tbl_doctors_details
,tbl_time
和tbl_token
。查询使用CASE,当然,然后在postgresql不工作
我必须从tbl_time
或tbl_token
中选择详细信息。也就是说,如果对于特定的医院医生有t_type
是time
然后从tbl_time
中选择其他从tbl_token
中选择。
例如,对于doctor_id
是100和hospital_id
1,t_type
是time
。因此对于此用户,详细信息应从tbl_time
表中选择。
下面是三个表的样本结构和数据:
如何使用CASE状况查询吗?
我想:
SELECT *
FROM
(SELECT * CASE WHEN t_type= 'time' FROM dbname.tbl_doctors_details t1 THEN
dbname.tbl_time t2
ELSE
dbname.tbl_token t2
WHERE t1.hospital_id=t2.hospital_id AND t1.doctor_id=t2.doctor_id);
我知道查询不工作,但如何使查询工作?
http://meta.stackoverflow.com/questions/285551 /为什么我可能没有上传图像的代码时这样问/ 285557#285557 –
我认为规范化的数据库会让你更容易做那。 – rbr94
我已经给出了示例数据来问这个问题..它与真实的不同 – next2u