如题:
SELECT b.zpzw,a.pname,a.qyname, a.qyfrom
FROM Company_Basemeans AS a LEFT OUTER JOIN invite_info AS b
ON a.qyname = b.qyname2
where (b.zpzw like'%文案%' or a.qyname like'%传媒%')
order by b.uptime现在输出时a.qyname会有重复的记录
我想只要其中的一条怎么处理好呢
这样写distinct(a.qyname)是无效的,杯具
SELECT b.zpzw,a.pname,a.qyname, a.qyfrom
FROM Company_Basemeans AS a LEFT OUTER JOIN invite_info AS b
ON a.qyname = b.qyname2
where (b.zpzw like'%文案%' or a.qyname like'%传媒%')
order by b.uptime现在输出时a.qyname会有重复的记录
我想只要其中的一条怎么处理好呢
这样写distinct(a.qyname)是无效的,杯具
;with t as (
SELECT b.zpzw,a.pname,a.qyname, a.qyfrom,b.uptime,
row_number() over (partiton by a.qyname order by b.zpzw) rn
FROM Company_Basemeans AS a LEFT OUTER JOIN invite_info AS b
ON a.qyname = b.qyname2
where b.zpzw like'%文案%' or a.qyname like'%传媒%'
)
select zpzw,pname,qyname,qyform
from t
where rn=1
order by uptime;
(
select a.qyname from
(
SELECT b.zpzw,a.pname,a.qyname, a.qyfrom
FROM Company_Basemeans AS a LEFT OUTER JOIN invite_info AS b
ON a.qyname = b.qyname2
where (b.zpzw like'%文案%' or a.qyname like'%传媒%')
order by b.uptime
) a
)
select distinct qyname from t