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

Oracle में 3 संबंधित तालिकाओं के साथ एक फ़ंक्शन का उपयोग करके कई पंक्तियों को एक कॉलम में शामिल करें

आपको अपने फ़ंक्शन को सदृश बनाने की आवश्यकता है:

CREATE OR REPLACE FUNCTION f_test(IN_ID IN TABLE_C.a_id%TYPE) 
RETURN VARCHAR2 
IS

  l_text  VARCHAR2(32767) := NULL;

BEGIN

  FOR cur_rec IN (SELECT b.b_name 
                    FROM TABLE_B b
                    JOIN TABLE_C c ON c.b_id = b.b_id
                   WHERE c.a_id = IN_ID) LOOP
    l_text := l_text || ',' || cur_rec.b_id;
  END LOOP;

  RETURN LTRIM(l_text, ',');

END;

फिर, आप इसका उपयोग कर सकते हैं:

SELECT a.a_name, 
       f_test(a.a_id)
  FROM TABLE_A a


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. R11i . में PL/SQL गेटवे

  2. क्या Oracle के पास SQL ​​​​सर्वर के तालिका चर के बराबर है?

  3. Oracle तत्काल क्लाइंट:ORA-28759:फ़ाइल खोलने में विफलता

  4. Oracle ODP.NET संस्करण अज्ञेयवादी विकल्प

  5. Oracle SQL का उपयोग करके पार्स Json - JSON_TABLE