Dual – função de script e gráfico
Dual() combina um número e uma string em um único registro, de modo que representação numérica do registro possa ser usada para classificar e calcular propósitos, enquanto o valor da string pode ser usado para exibir propósitos.
Sintaxe:
Dual(text, number)
Tipo de dados de retorno: dual
Argumento | Descrição |
---|---|
text | O valor da string a ser usado em combinação com o argumento numérico. |
number | O número a ser usado em combinação com a string no argumento numérico. |
No Qlik Sense, todos os valores de campo são potencialmente valores duais. Isso significa que os valores de campo podem ter tanto um valor numérico quanto um valor textual. Um exemplo é uma data que poderia ter um valor numérico de 40908 e a representação textual '2011-12-31'.
Exemplo | Descrição |
---|---|
Dual(IF(DayOfWeek = 0, 'Monday', IF(DayOfWeek = 1, 'Tuesday', If(DayOfWeek = 2 ,'Wednesday', If(DayOfWeek = 3 ,'Thursday', If(DayOfWeek = 4 ,'Friday', If(DayOfWeek = 5 ,'Saturday', If(DayOfWeek = 6 ,'Sunday' ))))))), DayOfWeek) | O campo DayOfWeek pode ser usado em uma visualização como uma dimensão. Em uma tabela, os dias da semana são classificados automaticamente na sequência numérica correta, em vez de em ordem alfabética. |
Dual(Pick( Priority , 'Low','Medium','High'), Priority) | O campo Priority pode ser usado em uma visualização como uma dimensão. Em uma tabela, o campo Priority é automaticamente classificado em sua sequência numérica correta, em vez de em ordem alfabética. |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) | O campo Date pode ser usado em uma visualização como uma dimensão. Os valores de texto Q1 a Q4 são criados e recebem os valores numéricos 1 a 4. |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) | O campo Date pode ser usado em uma visualização como uma dimensão. Este exemplo cria valores de texto do formulário '2012-W22' e, ao mesmo tempo, atribui um valor numérico correspondente ao número da data do primeiro dia da semana, por exemplo: 41057. |
Exemplo | Descrição |
---|---|
Adicione os seguintes exemplos ao seu script e execute-o. Load dual ( NameDay,NumDay ) as DayOfWeek inline [ NameDay,NumDay Monday,0 Tuesday,1 Wednesday,2 Thursday,3 Friday,4 Saturday,5 Sunday,6 ]; | O campo DayOfWeek pode ser usado em uma visualização como uma dimensão, por exemplo. Em uma tabela, os dias da semana são classificados automaticamente na sequência numérica correta, em vez de em ordem alfabética. |
Load Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter AutoGenerate 1; | Este exemplo localiza o trimestre atual. É exibido como Q1 quando a função Now é executada nos primeiros três meses do ano, Q2 para o segundo trimestre, e assim por diante. No entanto, quando usado em classificação, o campo Quarter se comportará como valor numérico: 1 a 4. |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as Quarter | Como no exemplo anterior, o campo Quarter é criado com os valores de texto Q1 a Q4 e são atribuídos os valores numéricos 1 a 4. Para usar isso no script, os valores de Date devem ser carregados. |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeek | Esse exemplo cria um campo YearWeek com os valores de texto com o formato 2012-W22 e, ao mesmo tempo, atribuirá um valor numérico correspondente ao número de data do primeiro dia da semana, por exemplo: 41057. Para usar isso no script, os valores de Date devem ser carregados. |