сортировка текста вручную (не ASC или DESC) - PullRequest
3 голосов
/ 10 января 2012

У меня есть этот SQL с "UNION". Часть "ОТ" опущена. Этот SQL генерирует пакетный файл, в котором важен порядок команд.

SELECT    'DISCONNECT ent_user  FROM job_code WITH user_id ="'
       || a.user_id
       || '" , jc_name = "'
       || b.jc_name
       || '";'
  FROM 
  [...]
UNION
SELECT    'DISCONNECT rss_user  FROM user_group WITH rss_user_name = "'
       || a.user_id
       || '"  rss_name = "'
       || b.rss_name
       || '" rss_type = "'
       || b.rss_type
       || '" , ug_name = "'
       || b.ug_name
       || '";'
  FROM 
  [...]
UNION
SELECT    'DELETE rss_user WITH rss_user_name = "'
       || a.user_id
       || '"  rss_name = "'
       || b.rss_name
       || '" rss_type = "'
       || b.rss_type
       || '";'
  FROM 
  [...]

Я хочу провести эту сортировку. Это вручную не ASC или DESC.

1) DISCONNECT ent_user  FROM job_code ... 
2) DISCONNECT rss_user  FROM user_group ... 
3) DELETE rss_user WITH rss_user_name

Как это сделать?

1 Ответ

7 голосов
/ 10 января 2012

Выберите буквенный числовой столбец вместе с вашим кодом, а затем упорядочите по нему:

SELECT code_text
  FROM (
        SELECT <code> AS code_text, 1 AS my_order
        ...
        UNION
        SELECT <code> AS code_text, 2 AS my_order
        ...
        [etc.]
       )
 ORDER BY my_order;

Затем вы можете установить любой заказ.

Надеюсь, это поможет ...

...