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

2927 आईडी की सूची में आने वाली सभी पंक्तियों का चयन करें

सामान्य तालिका अभिव्यक्ति (सीटीई) का उपयोग करके आईडी को तार्किक तालिका में बदलकर सामान्य रूप से जुड़ने का एक और तरीका यहां दिया गया है। इसके बारे में इस तरह सोचकर अपना सिर घुमाना आसान हो सकता है:

-- Build the list of IDs.
with data(str) as (
    select '67,122,173,256,284,285,288,289,291,294,296,298,301,320,346,359
     ,366,425,428,454,528,573,576,584,593,654,654,694,722,838,1833,1976,1979,1979,2002
     ,2004,2005,2045,2083,2109,2114,2126,2126,2157,2204,2204,2211,2212,2332,2576' 
    from dual
),
-- Turn the list into a table using the comma as the delimiter. Think of it
-- like a temp table in memory.
id_list(id) as (
  select regexp_substr(str, '(.*?)(,|$)', 1, level, NULL, 1)
  from data
  connect by level <= regexp_count(str, ',') + 1
)
-- Select data from the main table, joining to the id_list "temp" table where
-- the ID matches.
select tablename.*
from tablename, id_list
where tablename.id = id_list.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. क्या ODP.NET के लिए OracleCommand.BindByName को डिफ़ॉल्ट रूप से सत्य होने के लिए बाध्य करने का कोई तरीका है?

  2. एक सेलेक्ट स्टेटमेंट के परिणाम अपडेट करें

  3. JCombobox प्रदर्शित नहीं होता है

  4. Oracle में दिनांक स्वरूपण करते समय दिन और महीने के नामों का कैपिटलाइज़ेशन

  5. पीएल/एसक्यूएल में बीएलओबी को फाइल के रूप में कैसे सेव करें?