您的位置:首页 > 数据库 > MySQL

MySQL中两个表字段名相同导致的一个问题

2011-06-15 19:20 337 查看
今天在对两个表进行查询的时候,由于两个表的有已个字段名是相同的,最终导致了查询结果不是我要的,该问题导致我检查了很久啊。大致如下:

表A字段:

PID,PName,PNote

表B字段:

PID,Money,PayDate

查询语句如下:

SELECT PID,PName,(SELECT SUM(Money) FROM B WHERE PID=PID) TotalMoney ,PNote,(SELECT PayDate FROM B WHERE PID=PID ORDER BY PayDate DESC LIMIT 1) LastDate

FROM A



本来是想使用A表的值去在B表进行查询的,可最后返回的是所有的记录.最后发现是PID=PID的问题。最后我的解决方案是将PID赋值给另一个变量解决的。

如:

SELECT @PD:=PID P,PName,(SELECT SUM(Money) FROM B WHERE PID=@PD) TotalMoney ,PNote,(SELECT PayDate FROM B WHERE PID=@PD ORDER BY PayDate DESC LIMIT 1) LastDate

FROM A

不知道还有没有好方法了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: