Mám zdroj tabuľke, ktorá zoznamy, ako je to uvedené nižšie:
verejné.zdroj
Id | part_no | category
1 | 01270-4 | Landscape
2 | 01102-3 | Sports
Potom som cieľovej tabuľky s jsonb stĺpec (kombinácie) , ktoré uvádzajú, ako je uvedené nižšie;
verejné.cieľ
Id | part_no | combinations
7 | 01270-4 | {"subject":""}
8 | 01102-3 | {"subject":""}
Môj problém je - ako môžem aktualizovať cieľovej tabuľky s jsonb stĺpec (kombinácie) s hodnotami, pochádzajúcich zo zdroja tabuľky pomocou part_no stĺpca?
Výstup ako:
Id | part_no | combinations
7 | 01270-4 | {"subject":"Landscape"}
8 | 01102-3 | {"subject":"Sports"}
Snažil som sa nižšie, ale dáva chyba:
UPDATE public.target t
SET combinations = jsonb_set(combinations,'{subject}','s.category',false)
FROM public.source s
WHERE s.part_no = t.part_no;
ERROR: invalid input syntax pre typ json RIADOK 2: NASTAVIŤ kombinácie = jsonb_set(kombinácie,'{predmet}', 's.categor... ^ DETAIL: Token "s", je neplatný. KONTEXT: JSON údaje, v riadku 1: s... SQL štát: 22P02 Znakov: 77