Oracle'ın n alanlarının benzersiz birleşimlerini sorgulamak için basit bir yolu var mı. 1,2 ve 2,1 aynı kabul edilir bu sorgu itibarenSQL ve benzersiz n-coulmn kombinasyonları
SELECT LEAST(x.a, x.b),
GREATEST(x.a,x.b)
FROM (SELECT c1.n a,
c2.n b
FROM combinations c1
CROSS JOIN combinations c2
WHERE c1.n <> c2.n) x
GROUP BY LEAST(x.a, x.b), GREATEST(x.a,x.b);
:
CREATE TABLE combinations AS
SELECT 1 AS n
FROM DUAL
UNION ALL
SELECT 2
FROM DUAL;
eşsiz kombinasyonlar için sorgulama: Çok basit iki saha çözümü var. Ne yazık ki, 3-alanlı yapı için çalışmaz (örneğin, 1,2,3'ün, değerlerin sıralanması önemli olmadığı için, 3,1,2 ile aynı olduğu düşünülmelidir). Oracle analitik fonksiyonları bu soru için uygun bir çözüm sağlıyor mu? Belirli bir Oracle analitik işlevini önerebilir misiniz?
Sadece <<'yerine' <'kullanarak katılmaya gerek yok mu? –