2017-10-05 83 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