【发布时间】:2016-01-05 14:59:02
【问题描述】:
同时使用 RANK () OVER(Partition by column_1 order by column_2 asc) 作为排名
它在“OVER”附近显示不正确的语法。
在sybase ase中计算排名的任何替代方法??
提前致谢。
代码:
SELECT
BRN AS br_name,
SUM(TGAB) AS gross_amt_base
from (
SELECT
MB.BNAC AS BRN,
MT.TGAB * MTTM.MQR AS TGAB
FROM
dbo.MB MB,
dbo.MT MT,
dbo.MTTM MTTM,
dbo.MPPGTT MPPGTT
WHERE
MT.TEI IN (SELECT MAC.AAEI
FROM
dbo.MAC MAC,
dbo.MEA MEA,
dbo.MC MAC
WHERE
MAC.AASN = 'JPFA 5201 ' AND
MAC.AL = 'en-us' AND
MAC.CL = 'en-us' AND
MAC.AAEI = MEA.ea_id AND
MAC.CC = MEA.EBC) AND
MT.TED >= '2012-03-01 00:00:00.000' AND
MT.TED <= '2012-03-30 00:00:00.000' AND
MT.TBC NOT IN
(
0,
2,
99,
752,
1000001,
2000002,
390003431
)
AND
MB.BL = 'en-tx' AND
(MT.TCI != 'Y' OR
MT.TCD > '2012-03-30 00:00:00.000' OR
MT.TCD < '2012-03-01 00:00:00.000' OR
(MT.TOED < '2012-03-01 00:00:00.000' OR
MT.TOED > '2012-03-30 00:00:00.000') AND
NOT MT.TOED IS NULL) AND
MTTM.MLL = 'en-us' AND
MTTM.MTC = 7000 AND
MTTM.MTP = 'Y' AND
MTTM.MGO IN
(
'Purchases',
'Sales'
)
AND
ISNULL (MTTM.MAWF,
'LINK') = ISNULL (MT.TAWF,
'LINK') AND
MT.TGAB > 0 AND
MB.br_code = MT.TBC AND
MPPGTT.PTTC = MT.tr_tt_code AND
MTTM.mtttm_tt_code = MPPGTT.PTTC) AS A
GROUP BY BRN
【问题讨论】:
-
需要在OVER和(Partiton...之间留一个空格...