Ir para conteúdo principal Pular para conteúdo complementar

Only - função de gráfico

Only() retorna um valor se houver um e somente um resultado possível a partir dos dados agregados. Por exemplo, procurar o único produto em que o preço unitário =9 retornará NULL se mais de um produto tiver um preço unitário de 9.

Sintaxe:  

Only([{SetExpression}] [TOTAL [<fld {,fld}>]] expr)

Tipo de dados de retorno: dual

Argumentos:  

Argumentos
Argumento Descrição
expr A expressão ou campo que contém os dados a serem medidos.
SetExpression Por padrão, a função de agregação agregará um conjunto de registros possíveis definidos pela seleção. Um conjunto de registros alternativos pode ser definido por uma expressão de análise.
TOTAL

Se a palavra TOTAL ocorrer antes dos argumentos da função, o cálculo será feito sobre todos os valores possíveis, dadas as seleções atuais, e não apenas sobre os pertinentes ao valor dimensional atual, isto é, desconsiderando as dimensões do gráfico.

Usando TOTAL [<fld {.fld}>], em que o qualificador TOTAL é seguido por uma lista de um ou mais nomes de campo como um subconjunto das variáveis de dimensão de gráfico, você cria um subconjunto dos valores possíveis totais.

Definindo o escopo de agregação

Nota de dicaUse Only() quando desejar obter um resultado NULL, se houver vários valores possíveis nos dados de exemplo.

Exemplos e resultados:  

Dados
Customer Product UnitSales UnitPrice
Astrida AA 4 16
AstridaAA1015
AstridaBB99
BetacabBB510
BetacabCC220
BetacabDD-25
CanutilityAA815
CanutilityCC-19
Exemplos e resultados
Exemplos Resultados

Only({<UnitPrice={9}>} Product)

BB, porque esse é o único Productque tem um UnitPrice de '9'.

Only({<Product={DD}>} Customer)

Betacab, porque é o único Customer vendendo um Product chamado 'DD'.

Only({<UnitPrice={20}>} UnitSales)

O número de UnitSales onde UnitPrice é 20 é 2, pois existe apenas um único valor de UnitSales, onde o UnitPrice =20.

Only({<UnitPrice={15}>} UnitSales)

NULL, pois existem dois valores de UnitSales, onde o UnitPrice =15.

Dados usados nos exemplos:

ProductData:

LOAD * inline [

Customer|Product|UnitSales|UnitPrice

Astrida|AA|4|16

Astrida|AA|10|15

Astrida|BB|9|9

Betacab|BB|5|10

Betacab|CC|2|20

Betacab|DD||25

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo – um erro de digitação, uma etapa ausente ou um erro técnico – avise-nos!