手动排序concat文本(不是ASC或DESC)
问题描述:
我有这个SQL与“UNION”。 “FROM”部分被省略。这个SQL生成一个批处理文件,其中命令的顺序很重要。手动排序concat文本(不是ASC或DESC)
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
怎么办?
答
通过与您的代码,然后订的选择文字数字列:
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;
然后,您可以设置任何你想要的顺序。
希望它有帮助...