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

किसी भिन्न तालिका से यादृच्छिक अद्वितीय मानों का उपयोग करके कॉलम अपडेट करें

हम्म्म्म। . . यदि आप मनमाना . चाहते हैं तो आप पार्श्व जुड़ाव का उपयोग कर सकते हैं यादृच्छिक . के बजाय पता पता:

select t1.*, t2.*
from table1 t1 left join lateral
     (select t2.*
      from table2 t2
      where t2.company_number = t1.company_number and rownum = 1
     ) t2
     on 1=1;

यदि आप वास्तव में एक यादृच्छिक पता चाहते हैं जो प्रति कंपनी संख्या के समान हो, तो आप इसका उपयोग कर सकते हैं:

select t1.*, t2.*
from table1 t1 left join lateral
     (select t2.*,
             row_number() over (partition by company_number order by dbms_random.random) as seqnum
      from table2 t2
     ) t2
     on t2.company_number = t1.company_number and
        seqnum = 1;

यहां एक db<>बेला है जो यह दर्शाता है कि सिंटैक्स काम करता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SUM को चुने बिना Oracle क्वेरी को SUM द्वारा ऑर्डर करें

  2. मैं Oracle XE उदाहरण के SID को कैसे बदल सकता हूँ?

  3. Oracle SQL में कॉम्प्लेक्स IF स्टेटमेंट का उपयोग करना

  4. कैसे पता करें कि स्थापित Oracle क्लाइंट 32 बिट या 64 बिट है?

  5. ORA-01840:चयन का उपयोग करके Oracle सम्मिलित में दिनांक स्वरूप के लिए इनपुट मान पर्याप्त लंबा नहीं है