ok. pouvez vous essayer ceci :
tbl_matrix_intermediate_result m1 de mise à jour
ensemble
(m1.str_gewertet)
=
(gewertete_ba choisi de (
avec W comme (choisir le cnt_tbl_matrix_intermediate PK, lng_baumart, str_ba_lang, str_ba_kat, int_prozent, str_gewertet, str_lrt_class
du tbl_matrix_intermediate_result
là où str_ba_kat dedans (« H », « N », « B », « P ")
et lng_gebiet = : p_cnt_gebiet
et str_lrt_class = : p_str_lrt
et int_wg = : p_wg
et int_be = : p_be
et drapeau pas dans (1.2.3.4.5.6.7.8.9.10)
et eval_type = 1)
(le PK choisi, str_ba_lang, prozent, lng_baumart, psumme,
cas quand le lng_baumart = 33 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (28.31) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart = 53 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (28.29.30.31.32.33) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart = 54 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (13.14.15) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart = 72 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (22.23.25.26.27) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart = 74 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (5.6) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart = 79 et str_gewertet = « Ja » et prozent n'est pas nul et (choisir le compte (*) à partir de W où w.lng_baumart dedans (28.29.30.31.32) et w.int_prozent n'est pas nul) = 0 puis « Ja »
quand le lng_baumart pas dedans (33.53.54.72.74.79) et prozent n'est pas nul et str_gewertet = « Ja » puis « Ja »
autrement « Nein »
extrémité comme gewertete_ba
de (choisir le PK, lng_baumart, str_ba_lang, ba_kat de str_ba_kat, str_gewertet, prozent int_prozent, la somme (int_prozent) au-dessus (cloison par des str_lrt_class) du psumme de w)))z
là où m1.cnt_matrix_intermediate_result = z.pk)
là où existe (choisir 1
du tbl_matrix_intermediate_result xx
là où xx.str_ba_kat dedans (« H », « N », « B », « P ")
et xx.lng_gebiet = : p_cnt_gebiet
et xx.str_lrt_class = : p_str_lrt
et xx.int_wg = : p_wg
et xx.int_be = : p_be
et xx.flag pas dans (1.2.3.4.5.6.7.8.9.10)
et xx.eval_type = 1
et xx.cnt_tbl_matrix_intermediate = m1.cnt_tbl_matrix_intermediate) ;
J'ai ajouté où condition à la commande de mise à jour aussi bien de sorte que seulement ces disques qui doivent obtenir la volonté mise à jour mise à jour et ai également déplacé cette condition qui a donné l'erreur à l'intérieur de sorte qu'elle puisse fonctionner.
L'examiner assez bonne pour voir si cela fonctionne très bien parce que je ne peux pas examiner ceci à mon extrémité en raison d'aucunes tables/données.
Merci,