php、postgresql、mysql
我陷入了一个疑问。我不知道到底是什么问题。有人能帮我吗 代码如下: 当我运行查询时,它抛出错误:error:relationship“contactors”不存在 第5行:来自“承包商”php、postgresql、mysql,php,mysql,postgresql,Php,Mysql,Postgresql,我陷入了一个疑问。我不知道到底是什么问题。有人能帮我吗 代码如下: 当我运行查询时,它抛出错误:error:relationship“contactors”不存在 第5行:来自“承包商” 你也可以添加表结构吗 在名为cont的第一个别名中,它与cp连接,因此对于cont,您还需要选择id列 更好的post表结构和输出内容?试试这个 select cont.name, cont.total,cp.contractor_id,cp.amount_paid,wt.id
你也可以添加表结构吗 在名为
cont
的第一个别名中,它与cp
连接,因此对于cont,您还需要选择id
列
更好的post表结构和输出内容?试试这个
select cont.name, cont.total,cp.contractor_id,cp.amount_paid,wt.id
FROM
(
select name,id, sum(amount_to_be_paid) as total
from contractors group by name,id
) cont
left join
(
select contractor_id,sum(amount_paid) as amount_paid
from contractor_payments
group by contractor_id
) cp
on cont.id = cp.contractor_id
left join worktypeids as wt on cont.worktypeid_id = wt.id AND wt.project_id=2
从未处理过PostgreSQL,但如果这是MySQL,我就不会引用表名;如果下面显示的查询成功,那么您的问题是您有一个contractors表,而不是contractors表。所以,是的,不加引号的写作也能让它发挥作用。
select cont.name, cont.total,cp.contractor_id,cp.amount_paid,wt.id
FROM
(
select name,id, sum(amount_to_be_paid) as total
from contractors group by name,id
) cont
left join
(
select contractor_id,sum(amount_paid) as amount_paid
from contractor_payments
group by contractor_id
) cp
on cont.id = cp.contractor_id
left join worktypeids as wt on cont.worktypeid_id = wt.id AND wt.project_id=2