Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
oracle sql排序结果_Sql_Oracle - Fatal编程技术网

oracle sql排序结果

oracle sql排序结果,sql,oracle,Sql,Oracle,我有以下oracle查询: SELECT table_to_check.managed_system_serial, CASE WHEN infraprod.aix_servers.managed_system_serial IS NULL THEN 'NO' ELSE 'YES' END serial_exists, name FROM ( SELECT

我有以下oracle查询:

SELECT
    table_to_check.managed_system_serial,
    CASE
        WHEN infraprod.aix_servers.managed_system_serial IS NULL THEN
            'NO'
        ELSE
            'YES'
    END serial_exists,
    name
FROM
    (
        SELECT
            column_value managed_system_serial
        FROM
            TABLE ( sys.odcivarchar2list('BW020', 'D761P', '22DFW', 'BW020') )
    ) table_to_check
    LEFT JOIN infraprod.aix_servers ON table_to_check.managed_system_serial = infraprod.aix_servers.managed_system_serial
运行上述操作的结果是:

我试图使MANAGED_SYSTEM_SERIAL列按顺序显示,因为序列已经在列表中。我想要实现的是:

MANAGED_SYSTEM_SERIAL  NAME     SERIAL_EXISTS
BW020                                NO
D761P                 gmp3dr         YES
22DFW                 PROM1VIOS2     YES
22DFW                 PROM1VIOS1     YES
22DFW                 promdb1        YES
BW020                                NO
*上面的系列只是一个例子。实际数字总共约为1000人

**每个序列可能有多个条目,但这不是问题,我只需要让它们出现在按顺序排列的结果中,因为它们在此列表中:

(
    'BW020',
    'D761P',
    '22DFW',
    'BW020'
)
由于我对SQL的了解几乎为零,这困扰了我一周,我找不到适合我的解决方案


非常感谢您的帮助。

您是在寻找
订购人吗

order by MANAGED_SYSTEM_SERIAL

您只是在寻找订购人吗

order by MANAGED_SYSTEM_SERIAL

在内部查询中包括
rownum
,并使用它对输出进行排序:

select t.managed_system_serial, name, 
        case when a.managed_system_serial is null then 'NO' else 'YES' end SERIAL_EXISTS
  from (
    select rownum rn, column_value managed_system_serial 
      from table(sys.odcivarchar2list('BW020', 'D761P', '22DFW', 'BW020'))) t
  left join aix_servers a on a.managed_system_serial = t.managed_system_serial
  order by t.rn

在内部查询中包含
rownum
,并使用它对输出进行排序:

select t.managed_system_serial, name, 
        case when a.managed_system_serial is null then 'NO' else 'YES' end SERIAL_EXISTS
  from (
    select rownum rn, column_value managed_system_serial 
      from table(sys.odcivarchar2list('BW020', 'D761P', '22DFW', 'BW020'))) t
  left join aix_servers a on a.managed_system_serial = t.managed_system_serial
  order by t.rn

文档是开始学习的好方法:文档是开始学习的好方法:非常感谢!这正是我想要的。非常感谢!这正是我想要的。