MySQL ORDER BY WITH JOIN
下面是MySQL语句的php代码。我正在尝试按lname排序,这是members表中的姓氏。我尝试将成员作为members1,将内部成员作为members2,但该语句也会抛出一个错误。我认为问题在于,我有两个相同的列名,但按照连接示例的其他顺序,我看不到有相同数据列的特定情况。只要我在最后一行中没有注释,语句本身就可以正常工作MySQL ORDER BY WITH JOIN,mysql,Mysql,下面是MySQL语句的php代码。我正在尝试按lname排序,这是members表中的姓氏。我尝试将成员作为members1,将内部成员作为members2,但该语句也会抛出一个错误。我认为问题在于,我有两个相同的列名,但按照连接示例的其他顺序,我看不到有相同数据列的特定情况。只要我在最后一行中没有注释,语句本身就可以正常工作 $sql=" SELECT * FROM members m JOIN paid p ON m.member_id = p.member_id WH
$sql="
SELECT *
FROM members m
JOIN paid p
ON m.member_id = p.member_id
WHERE p.year = '$lastyear-12-31'
AND m.member_id NOT IN
( SELECT x.member_id
FROM members x
JOIN paid y
ON x.member_id = y.member_id
WHERE y.year = '$thisyear-12-31')
ORDER
BY lname "
命名您的列。向要排序的列添加别名
$sql.="ORDER BY members.lname "
您应该很好。您会遇到什么错误?可能是您在两个表中都有lname,paid和members。因此,您需要按members.lname订购,而不是在
paid
表中为什么有lname
字段?您不应该跨不同的表复制数据。