sql >> Database teknologi >  >> RDS >> Oracle

Sådan gør du split og left join i oracle

Prøv:

SELECT cu.ID , cu.ADI_NUMARASI , co.ID , co.VALUE
FROM 
(
  SELECT id,ADI_NUMARASI,TYPEIDS,DOMAINID,
  regexp_substr(TYPEIDS,'[^,]+', 1, level) typeidsnew 
  FROM Customer 
  GROUP BY id,ADI_NUMARASI,TYPEIDS,DOMAINID,
  regexp_substr(TYPEIDS, '[^,]+', 1, level)
  connect by regexp_substr(TYPEIDS, '[^,]+', 1, level) is not null
) cu 
LEFT JOIN Code co ON cu.typeidsnew = co.ID
AND cu.DomainId = co.domainId 
ORDER BY cu.ID,co.ID

Output:http://sqlfiddle.com/#!4/177e8/1



  1. Hvordan kombinerer man disse forespørgsler for at opnå hurtigere ydeevne?

  2. ORA-06550:Forkert antal eller type argumentfejl ved opkald af en funktion inde i en oracle-pakke i ASP.NET

  3. Vælg tilfældig række pr. særskilt feltværdi?

  4. Omstrukturering af en dårlig database med PHP-løkker eller MySQL