質問

これはばかげたリクエストであることに気付きましたが、私がやろうとしているのは、複数のレコードを文字通りのテキストとともに単一の列に引き戻すことです。

だからこのようなテーブルを与えられた

REGION  CITY    SID
-------------------
1   Chicago     1234
1   Palatine    567
1   Algonquin   234
1   Wauconda    987

列のある単一のレコードを見たいと思います。地域のような他の列は問題ありませんが、このような単一の列は問題ありません

<option value="1234">Chicago</option><option value="567">Palatine</option><option value="234">Algonquin</option><option value="987">Wauconda</option>

これを行う方法について何か考えはありますか?私はOracle9iを実行しています、そしてPL/SQLでこれを行うことはできません


さて、テーブル形式は少し変更されましたが、アイデアは同じです

COUNTRY STORECODE   STORE_NAME
------------------------------
USA     1234        Chicago
USA     567         Palatine
CAN     987         Toronto

だから私はこのコードがリストされているリンクを通過していることを発見しました

SELECT COUNTRY,
       LTRIM(MAX(SYS_CONNECT_BY_PATH(STORECODE,','))
       KEEP (DENSE_RANK LAST ORDER BY curr),',') AS COUNTRY_HTML
FROM   (SELECT COUNTRY,
               STORECODE,
               ROW_NUMBER() OVER (PARTITION BY COUNTRY ORDER BY STORECODE) AS curr,
               ROW_NUMBER() OVER (PARTITION BY COUNTRY ORDER BY STORECODE) -1 AS prev
        FROM   tablename)
GROUP BY COUNTRY
CONNECT BY prev = PRIOR curr AND COUNTRY = PRIOR COUNTRY
START WITH curr = 1;

そして、私がそれを実行すると、私はこの出力を見ます

COUNTRY COUNTRY_HTML
--------------------
USA     1234,567
CAN     987

私の考えは、このように必要なHTMLとともに、StoreCodeとStore_Nameのconcatを行う別のSelectからの内側の選択を単に持っていることでした...

SELECT COUNTRY,
       LTRIM(MAX(SYS_CONNECT_BY_PATH(RECORD_HTML,','))
       KEEP (DENSE_RANK LAST ORDER BY curr),',') AS COUNTRY_HTML
FROM   (SELECT COUNTRY,
               RECORD_HTML,
               ROW_NUMBER() OVER (PARTITION BY COUNTRY ORDER BY RECORD_HTML) AS curr,
               ROW_NUMBER() OVER (PARTITION BY COUNTRY ORDER BY RECORD_HTML) -1 AS prev
        FROM   (SELECT COUNTRY, '<option value="' || STORECODE || '">' || STORE_NAME || '</option>' AS RECORD_HTML FROM tablename))
GROUP BY COUNTRY
CONNECT BY prev = PRIOR curr AND COUNTRY = PRIOR COUNTRY
START WITH curr = 1;

フロントエンドの環境は、結果を確認しようとするときにクエリを受け入れますが、エラーが発生します。リソースは無効です。表示する前に、クエリを修正する必要がある場合があります。

エラーはおそらく役に立たないことを知っていますが、なぜ私のバージョンが機能していないのかアイデアはありますか?

ありがとう!

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top