Concat - grafik fonksiyonu
Concat(), dize değerlerini birleştirmek için kullanılır. Fonksiyon, her bir boyut üzerine değerlendirilen ifadenin tüm değerlerinin toplanmış dize birleşimini döndürür.
Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])
Dönüş verileri türü: dize
| Bağımsız değişken | Açıklama |
|---|---|
| string |
İşlenecek dizeyi içeren ifade veya alan. |
| delimiter | Her değer, delimiter içinde bulunan dize ile ayrılabilir. |
| sort_weight |
Birleştirme sırası, varsa sort_weight boyutunun değerine göre belirlenebilir ve en düşük değere karşılık gelen dize birleştirmede ilk sırada yer alır. sort_weight bağımsız değişken değeri olarak 0 kullanıldığında, çıktıya sıralama uygulanmaz. sort_weight bağımsız değişkeni atlanırsa, işlev varsayılan olarak alfasayısal sıralama yapar. |
| SetExpression | Toplama işlevi, varsayılan olarak, seçim tarafından tanımlanmış olası kayıtlar kümesi üzerinden toplanır. Bir set analizi ifadesi ile alternatif bir kayıt kümesi tanımlanabilir. |
| DISTINCT | Fonksiyon bağımsız değişkenlerinden önce DISTINCT sözcüğü varsa fonksiyon bağımsız değişkenlerinin değerlendirilmesinden kaynaklanan çoğaltmalar göz ardı edilir. |
| TOTAL |
TOTAL sözcüğü, fonksiyon bağımsız değişkenlerinden önce gelirse, hesaplama yalnızca geçerli boyutsal değere ait olanlar için değil, geçerli seçimlerde verilen tüm olası değerler üzerinden yapılır; yani grafik boyutlarını göz ardı eder. TOTAL niteleyicisinden sonra grafik boyut değişkenlerinin bir alt kümesi olarak bir veya daha çok alan adının geldiği TOTAL [<fld {.fld}>] niteleyicisini kullanarak toplam olası değerlerin bir alt kümesini oluşturursunuz. |
| SalesGroup | Amount | Concat(Team) | Concat(TOTAL <SalesGroup> Team) | Concat(Team, ', ', 0) | Concat(TOTAL <SalesGroup> Team, '', 0) |
|---|---|---|---|---|---|
| East | 14000 | Delta | AlphaBetaDeltaGammaGamma | Delta | GammaGammaAlphaDeltaBeta |
| East | 20000 | BetaGammaGamma | AlphaBetaDeltaGammaGamma | GammaGammaBeta | GammaGammaAlphaDeltaBeta |
| East | 25000 | Alpha | AlphaBetaDeltaGammaGamma | Alpha | GammaGammaAlphaDeltaBeta |
| West | 14000 | Eta | EpsilonEtaThetaZeta | Eta | ZetaEpsilonEtaTheta |
| West | 17000 | Epsilon | EpsilonEtaThetaZeta | Epsilon | ZetaEpsilonEtaTheta |
| West | 19000 | Zeta | EpsilonEtaThetaZeta | Zeta | ZetaEpsilonEtaTheta |
| West | 23000 | Theta | EpsilonEtaThetaZeta | Theta | ZetaEpsilonEtaTheta |
| Örnek | Sonuç |
|---|---|
| Concat(Team) |
Tablo, SalesGroup ve Amount boyutlarından ve Concat(Team) hesaplamasındaki varyasyonlardan oluşturulur. Toplamlar sonucu göz ardı edildiğinde, iki SalesGroup değerine yayılmış sekiz Team değeri için veri olmasına rağmen, tabloda birden fazla Team dize değerini birleştiren Concat(Team) hesaplamasının tek sonucunun, BetaGammaGamma sonucunu veren Amount 20000 boyutunu içeren satır olduğuna dikkat edin. Bunun nedeni, giriş verilerinde Amount 20000 için üç değer olmasıdır. Hesaplama boyutlar boyunca yayıldığında diğer tüm sonuçlar birleştirilmemiş olarak kalır, çünkü her bir SalesGroup ve Amount kombinasyonu için yalnızca bir Team değeri vardır. |
| Concat(DISTINCT Team,', ') | Beta, Gamma. Çünkü DISTINCT niteleyicisi, çoğaltılan Gamma sonucunun göz ardı edildiği anlamına gelir. Ayrıca, sınırlayıcı bağımsız değişkeni bir virgül ve ardından bir boşluk olarak tanımlanır. |
| Concat (TOTAL <SalesGroup> Team) | TOTAL niteleyicisi kullanılırsa, tüm Team değerleri için tüm dize değerleri birleştirilir. Belirtilen <SalesGroup> alan seçimi ile bu, sonuçları SalesGroup boyutunun iki değerine böler. SalesGroupEast için sonuçlar AlphaBetaDeltaGammaGamma şeklindedir. SalesGroupWest için sonuçlar EpsilonEtaThetaZeta şeklindedir. |
| Concat (TOTAL <SalesGroup> Team,';', Amount) | sort_weight için bağımsız değişken eklenerek: Amount, sonuçlar Amount boyutunun değerine göre sıralanır. Sonuçlar DeltaBetaGammaGammaAlpha ve EtaEpsilonZEtaTheta olur. |
| Concat(Team, '', 0) | sort_weight 0 olarak ayarlandığında sonuçlar sıralanmaz. |
| Concat(TOTAL <SalesGroup> Team, '', 0) | sort_weight 0 olarak ayarlandığında sonuçlar sıralanmaz. Ayrıca, TOTAL niteleyicisi kullanıldığı için tüm Team değerlerine ait tüm dize değerleri birleştirilir. |
Örnekte kullanılan veriler:
TeamData:
LOAD * inline [
SalesGroup|Team|Date|Amount
East|Gamma|01/05/2013|20000
East|Gamma|02/05/2013|20000
West|Zeta|01/06/2013|19000
East|Alpha|01/07/2013|25000
East|Delta|01/08/2013|14000
West|Epsilon|01/09/2013|17000
West|Eta|01/10/2013|14000
East|Beta|01/11/2013|20000
West|Theta|01/12/2013|23000
] (delimiter is '|');