Łukasz W.

Łukasz W. Zarządzanie Zasobami
Informacyjnymi

Temat: TERADATA - Join w update - Failure 7547 Target row...

Witam,
Mam problem.

Update z joinem zwraca mi:
*** Failure 7547 Target row updated by multiple source rows.
Statement# 2, Info =0

Oczywiście walczę nad nim chwilę i już wiem, że warunek w Update zwraca dwie wartości do update'u (coś w ten deseń z google).
Kombinuję ze zmianą formy update'u tak by możliwie bezstratnie (sensownie) to obejść.
Potrzebuję to na jutro.

Zapytanie jak poniżej:

UPDATE A
FROM AKTYWACJA A
,COSTAM B
SET id_czegos_tam = 71
WHERE A.ID_KLUCZ = B.ID_KLUCZ
AND A.ID_DATA = B.ID_DATA
AND A.ID_jakies_id = 'P03';

Pozdrawiam!

konto usunięte

Temat: TERADATA - Join w update - Failure 7547 Target row...

subquery z distinct
Łukasz W.

Łukasz W. Zarządzanie Zasobami
Informacyjnymi

Temat: TERADATA - Join w update - Failure 7547 Target row...

Niby tak ale czy distinct da poprawny logicznie wynik ?

konto usunięte

Temat: TERADATA - Join w update - Failure 7547 Target row...

select distinct id_czegos_tam
FROM AKTYWACJA A join COSTAM B on A.ID_KLUCZ = B.ID_KLUCZ
AND A.ID_DATA = B.ID_DATA
AND A.ID_jakies_id = 'P03';

w tym nie ma wyrafinowanej logiki

czemu nie dałeś JOIN-a?
Łukasz W.

Łukasz W. Zarządzanie Zasobami
Informacyjnymi

Temat: TERADATA - Join w update - Failure 7547 Target row...

Więcej czasu dotychczas spedzałem na jakotakiej konfiguracji baz niż klepaniu sql'i :P
Czasy się zmieniają...

Robiłęm to na podstawie zapytania które muszę zmienić. Fungało bez joina ><

Jak to teraz wbić w update?

konto usunięte

Temat: TERADATA - Join w update - Failure 7547 Target row...

update AKTYWACJA
set id_czegos_tam =71
where id_czegos_tam in (

select distinct id_czegos_tam
FROM AKTYWACJA A join COSTAM B on A.ID_KLUCZ = B.ID_KLUCZ
AND A.ID_DATA = B.ID_DATA
AND A.ID_jakies_id = 'P03'

)

zakładam że wszystkie id_czegos_tam poprawiamy

Następna dyskusja:

Insert select . Multiple ro...




Wyślij zaproszenie do