2017-10-05 85 views
0

如何通過特定的ID在SQL SELECT查詢如何通過特定ID添加順序在SQL SELECT查詢

加訂貨我Table_Example像下面

ID Name 
    2 Text2 
    9 kkk 
    10 jj 
    1 pp 

我需要一個像下面

輸出
ID Name 
    9 kkk 
    1 pp 
    10 jj 
    2 Text2 
+3

你不提任何訂購的邏輯很難理解。 –

+0

這些是固定值只有我在這個表是查找表中的10個值,它不會增加。 @VamsiPrabhala – zahed

+0

希望你現在瞭解我的要求。 @VamsiPrabhala – zahed

回答

0

您只需如下,如果你有一些記錄&希望使用Case表達定製訂單:

SELECT ID, 
     NAME 
FROM <table_name> 
ORDER BY(CASE(NAME) 
      WHEN 'kkk' 
      THEN 1 
      WHEN 'pp' 
      THEN 2 
      WHEN 'jj' 
      THEN 3 
      WHEN 'Text2' 
      THEN 4 
     END); 

輸出:

enter image description here

+0

謝謝,我從你的查詢中得到了答案。 @Ygege Sharma – zahed

1

如果您希望表格中的值有順序,只需在表格中添加一個sortkey列即可。

alter table lookup_table add column sortkey int; 

然後填寫sortkeys並在查詢中使用它們。

select 
... 
order by sortkey; 
+0

我的IDS聲明在哪裏?可以更新清楚。 @Thorsten Kettner – zahed

+0

我不明白你的問題。你的ID當然在表中,名字也是如此,所以應該是sortkeys。你會給記錄ID9最低的排序鍵和ID1最高的記錄,你總是按那個排序鍵排序。 –

+0

如果你更新完整的答案會有幫助,我明確提到上面的問題應該如下。 @Thorsten Kettner – zahed