我有两个具有以下结构的表:
exp_hotel
hot_id | hot_webid | hot_name | hot_starrating | hot_brandbool | hot_latitude | hot_longitude
exp_result
res_id | res_idHotel | res_rank | res_price | res_userRating | res_oldPrice | res_posa | res_date | res_date | res_que_id
res_posa有时会有值' xxx'或价值' yyy'。
如果它的值为' xxx',SELECT应该是这样的:
SELECT * FROM exp_hotel JOIN exp_result ON hot_id = res_idHotel
如果res_posa值是' yyy'而SELECT将是:
SELECT * FROM exp_hotel JOIN exp_result ON hot_webid = res_idHotel
有没有办法如何创建一个查询,它可以直接从MySQL中选择具有正确JOIN结构的所有内容,而无需通过某些PHP数组等等?
答案 0 :(得分:1)
您可以使用如下的条件连接。
SELECT * FROM exp_hotel JOIN exp_result ON
(res_posa = 'XXX' and hot_id = res_idHotel)
OR
(res_posa = 'YYY' and hot_webid = res_idHotel);
嘲弄小提琴here。