作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有以下查询:
select tem.TEMAT, pra.NR_PRAC
from tematy tem, pracownicy pra, wyplaty wyp
where pra.NR_PRAC = wyp.NR_PRAC
and wyp.NR_TEM = tem.NR_TEM
group by tem.TEMAT, pra.NR_PRAC
having sum(wyp.KWOTA)>=ALL(
select sum(w.kwota)
from wyplaty w, pracownicy p
where w.NR_TEM=tem.NR_TEM and p.NR_PRAC=w.NR_PRAC )
这是行不通的。
错误:
SQL Error (1054): Unknown column 'uczelnia.tem.NR_TEM' in 'where clause'
看来我不能在嵌套查询中使用 tem.NR_TEM
。
最佳答案
你不能使用它,因为它是按部分分组的......尝试以这种方式排列它:
select tem.TEMAT, pra.NR_PRAC,
(select sum(w.kwota) from wyplaty w, pracownicy p where w.NR_TEM=tem.NR_TEM and p.NR_PRAC=w.NR_PRAC) AS irs
from tematy tem, pracownicy pra, wyplaty wyp where pra.NR_PRAC = wyp.NR_PRAC and wyp.NR_TEM = tem.NR_TEM group by tem.TEMAT, pra.NR_PRAC having sum(wyp.KWOTA)>=ALL(irs)
将子查询放在外部查询的选择列表中应该可以解决问题。
关于mysql - 'where clause' 中的未知列 - 在 WHERE 中使用 ALL 运算符时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24230397/
我是一名优秀的程序员,十分优秀!