2013-07-22 26 views
1

特殊排序我有没有排序表我想要的方式下面的查询:在Teradata的

SELECT * FROM tbl 
ORDER BY 
BAN, 
BEN, 
bill_seq_no DESC, 
CASE 
    WHEN Ebene='BAN - Open Debts' THEN 1 
    WHEN Ebene='BEN - Open Debts' THEN 2 
END, 
Rufnummer 
     ; 

应该对表进行排序first by BANthen by BEN。现在在Ebene='BEN - Open Debts'的第三级行有bill_seq_no = NULL。这就是为什么它在底部排列这一行。

我想要它在顶部。

我该怎么做?

回答

1

Got it!这是

SELECT * FROM adam_tmp.AAM711119__result 
ORDER BY 
BAN, 
BEN, 

CASE 
    WHEN Ebene LIKE '%BEN - Open Debts%' THEN 1 
    ELSE 2 
END, 
     bill_seq_no DESC, 
Rufnummer 

;