我需要做一个相关的SQL查询,为此我需要为外部查询提供一个别名,我在其中执行内部连接。我无法做别名
SELECT DISTINCT(name)
FROM PERSON
INNER JOIN M_DIRECTOR AS dira
ON (dira.PID = M_DIRECTOR.PID) as dira
WHERE 9 > (
SELECT COUNT(MID) FROM M_DIRECTOR WHERE name = dira.name
) ;
答案 0 :(得分:1)
我真的不明白你想做什么,但我想
select
distinct p.name,
count(d.MID) cnt
from
hindi2_PERSON p
inner join
hindi2_M_DIRECTOR d
on
p.PID = d.PID
group by
p.name
having count(d.MID) > 9
;
会做你想做的事
答案 1 :(得分:0)
我不知道你在问什么,你的意思是通过为eniter结果做一个别名?
但你正在做
select distinct(name) as othername
您选择name
,并在此处othername
作为别名
然后在结果
中检索它 $row['othername']
答案 2 :(得分:-2)
还有一些东西不见了。根据您的编写,M_DIRECTOR表中有一个字段名称? 请显示所涉及的所有表格和属性,使用SQL Fiddle准备示例。
SELECT DISTINCT(name)
FROM PERSON as p
INNER JOIN (
SELECT COUNT(MID), PID FROM M_DIRECTOR WHERE name = dira.name
) as d
ON (p.PID = d.PID) ;