Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
gz
Creator
Creator

extractiong and replacing max values ​​for group by

I have a script that loads data
Umowy:

LOAD id_typ_umowy,
typ_umowy,
id_forma_umowy,
forma_umowy,
id_status_umowy,
status_umowy,
nr_umowy,
migrated,
data_generacji,
data_zawarcia,
Year(data_aktywacji) as Rok_data_aktywacji,
Date(MonthStart (data_aktywacji), 'MMM-YYYY') as Miesiac_Rok_data_aktywacji,
num(month(data_aktywacji)) as NumerSotrowanie_data_aktywacji,
data_aktywacji,
data_rozwiazania,
id_nadklient;

[bq_contract]:
SELECT "id_typ_umowy",
"typ_umowy",
"id_forma_umowy",
"forma_umowy",
"id_status_umowy",
"status_umowy",
"nr_umowy",
"migrated",
"data_generacji",
"data_zawarcia",
"data_aktywacji",
"data_rozwiazania",
"id_nadklient"
FROM "qlick"."bq_contract";

I would like Miesiac_Rok_data_aktywacji and Rok_data_aktywacji to be only one for id_nadklient. Now there may be several of them, I would like the one with the maximum data_aktywacji to be taken.

I'm traying with:
Temp_Max_Data_Aktywacji:

LOAD id_nadklient, max(data_aktywacji) as max_data_aktywacji

RESIDENT [bq_contract]

GROUP BY id_nadklient;

but no result. Maybe someone can help me

Labels (2)
6 Replies
marksouzacosta

Try this at the end of your Load Script:

Temp_Max_Data_Aktywacji:
LOAD
id_nadklient, 
max(data_aktywacji) as max_data_aktywacji
RESIDENT
[Umowy]
GROUP BY 
id_nadklient
;

Important: make sure data_aktywacji is a date field. It cannot be a text.

Read more at Data Voyagers - datavoyagers.net
Follow me on my LinkedIn | Know IPC Global at ipc-global.com

gz
Creator
Creator
Author

Table [Umowy] not found, if I change it to "Umowy" it's the same error message

piotr-bratek
Creator
Creator

Hi,
If you need a support you should always provide more information. This time e.g.:

# processing outcome - e.g. a screen of the output table or of the error (we don't know what "no result" means)
# you can also share some rows from your input data

Then it's easier for the community to help you.

# Are you sure your date has been recognized as a date ?
# paste a screenshot of your script suggested by @marksouzacosta - his suggestion should work, so it's either sth wrong with the data or the way you applied the script

pozdrowienia 😉
Piotr

The most experienced Qlik Trainer in Central Europe
Kushal_Chawda

@gz  try below

Inner join(bq_contract)

LOAD id_nadklient, 

           max(data_aktywacji) as data_aktywacji

RESIDENT [bq_contract]

GROUP BY id_nadklient;

gz
Creator
Creator
Author

it worked when I changed RESIDENT to [bq_contract]
Now I have:

Umowy:
 
LOAD id_typ_umowy, 
typ_umowy, 
id_forma_umowy, 
forma_umowy, 
id_status_umowy, 
status_umowy, 
nr_umowy, 
    migrated,
data_generacji, 
data_zawarcia, 
    Year(data_aktywacji) as Rok_data_aktywacji,
    Date(MonthStart (data_aktywacji), 'MMM-YYYY') as Miesiac_Rok_data_aktywacji,
    num(month(data_aktywacji)) as NumerSotrowanie_data_aktywacji,
Date(data_aktywacji) as data_aktywacji, 
data_rozwiazania, 
id_nadklient;
 
[bq_contract]:
SELECT "id_typ_umowy",
"typ_umowy",
"id_forma_umowy",
"forma_umowy",
"id_status_umowy",
"status_umowy",
"nr_umowy",
    "migrated",
"data_generacji",
"data_zawarcia",
"data_aktywacji",
"data_rozwiazania",
"id_nadklient"
FROM "qlick"."bq_contract";
////////////////////////////////////////////
Temp_Max_Data_Aktywacji:
LOAD 
id_nadklient, 
Date(max(data_aktywacji)) as max_data_aktywacji
RESIDENT
[bq_contract]
GROUP BY 
id_nadklient
;
how can I join this Temp_Max_Data_Aktywacji to replace 
Date(MonthStart (data_aktywacji), 'MMM-YYYY') as Miesiac_Rok_data_aktywacji,
 
to 
Date(MonthStart (max_data_aktywacji), 'MMM-YYYY') as Miesiac_Rok_data_aktywacji,
 
Kushal_Chawda

@gz  don't think I understand it , but try below

Inner join(bq_contract)

LOAD id_nadklient, 

           date(max(Miesiac_Rok_data_aktywacji),'MMM-YYYY') as Miesiac_Rok_data_aktywacji

RESIDENT [bq_contract]

GROUP BY id_nadklient;