Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

पंक्तियों को CLOB में संयोजित करें

जैसा कि de.hh.holger ने पहले ही बताया, CLOB के साथ LISTAGG? XMLAGG के साथ स्ट्रिंग एकत्रीकरण 4000 वर्णों से अधिक है वास्तव में इस समस्या का समाधान करता है।

मैंने इस विषय पर थोड़ा और विस्तार किया है और वास्तव में लंबे स्ट्रिंग संदेश के मामले में यह चाल चलनी चाहिए:

SELECT
   table_row_id,
   DBMS_XMLGEN.CONVERT (
     EXTRACT(
       xmltype('<?xml version="1.0"?><document>' ||
               XMLAGG(
                 XMLTYPE('<V>' || DBMS_XMLGEN.CONVERT(data_value)|| '</V>')
                 order by myOrder).getclobval() || '</document>'),
               '/document/V/text()').getclobval(),1) AS data_value
FROM (
   SELECT 1 myOrder, 1 table_row_id,'abcdefg>' data_value FROM dual
   UNION ALL
   SELECT 2, 1 table_row_id,'hijklmn' data_value FROM dual
   UNION ALL
   SELECT 3, 1 table_row_id,'opqrst' data_value FROM dual
   UNION ALL
   SELECT 4, 1 table_row_id,'uvwxyz' data_value FROM dual)
GROUP BY
   table_row_id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टेबल डिजाइन करते समय एक-से-एक, एक-से-कई और कई-से-अनेक संबंधों को कैसे कार्यान्वित करें?

  2. पीएल/एसक्यूएल में किसी फाइल को अनजिप कैसे करें?

  3. Oracle में XML टिप्पणियों को पार्स करना

  4. sql में माध्यिका कैसे खोजें?

  5. Oracle SQL बाधा जहां खंड