1
我在尝试使用PHP和MySQL中的不同条件加入多个表时出现以下错误。使用PHP和MySQL加入多表时出现SQL错误
Error:
Incorrect usage of UNION and ORDER BY
我下面解释我的查询。
select b.member_id,b.rest_name,b.city,b.proviance,b.postal,b.address,b.country,b.person,b.mobile,b.url,b.status,b.premium,b.image,b.business_phone_no,b.email,b.multiple_image,b.latitude,b.longitude,b.quadrant,d.member_id,d.day_id,d.cat_id,d.subcat_id,d.comment,d.city,d.special_images,c.cat_id,c.special,sub.subcat_id,sub.subcat_name,sub.status,sl.day_id,sl.member_id,sl.date_from,sl.date_to from db_restaurant_basic as b left join db_restaurant_detail as d on b.member_id=d.member_id left join db_category as c on d.cat_id=c.cat_id left join db_subcategory as sub on d.subcat_id=sub.subcat_id left join db_special_images as sl on d.day_id=sl.day_id and d.member_id=sl.member_id where b.city='2' and d.day_id='3' and c.special='2' and sl.date_from <='2016-10-26' and sl.date_to >= '2016-10-26' and b.status=1 and sub.status=1 and sl.date_from !='' and sl.date_to !='' ORDER BY b.member_id DESC UNION ALL SELECT b.member_id,b.rest_name,b.city,b.proviance,b.postal,b.address,b.country,b.person,b.mobile,b.url,b.status,b.premium,b.image,b.business_phone_no,b.email,b.multiple_image,b.latitude,b.longitude,b.quadrant,d.member_id,d.day_id,d.cat_id,d.subcat_id,d.comment,d.city,d.special_images,c.cat_id,c.special,sub.subcat_id,sub.subcat_name,sub.status,sl.day_id,sl.member_id,sl.date_from,sl.date_to from db_restaurant_basic as b left join db_restaurant_detail as d on b.member_id=d.member_id left join db_category as c on d.cat_id=c.cat_id left join db_subcategory as sub on d.subcat_id=sub.subcat_id left join db_special_images as sl on d.day_id=sl.day_id and d.member_id=sl.member_id where b.city='2' and d.day_id='3' and c.special='2' and b.status=1 and sub.status=1 and sl.date_from ='' and sl.date_to ='' ORDER BY b.member_id DESC
请帮我解决这个错误。
我没有按你,但它抛出这个'再次出现'order clause'错误中的未知列'b.member_id'。 – satya
我已更新asnwer添加一个别名cor b.member_id并使用这个别名我命令通过..让我知道 – scaisEdge
它再次抛出这个'#1052 - 列'member_id'在order子句是不明确的错误。 – satya