single row subquery returns more than one row
preciso fazer esta query trabalhar mas ela reclama de muitas linhas no substr
update
pcprodut
set
pcprodut.codgenerofiscal = (
select
substr(pcprodut.codncmex,0,2)
from
pcprodut
where
pcprodut.codprod in(10889,10890)
)
where
pcprodut.codprod in (10889,10890)João Teixeira
Curtidas 0
Respostas
Emerson Nascimento
18/01/2019
tente assim:
note que troquei o sinal de igual pelo operador 'in' e adicionei o group by
update
pcprodut
set
pcprodut.codgenerofiscal in (
select
substr(pcprodut.codncmex,0,2)
from
pcprodut
where
pcprodut.codprod in(10889,10890)
group by 1
)
where
pcprodut.codprod in (10889,10890)note que troquei o sinal de igual pelo operador 'in' e adicionei o group by
GOSTEI 0
João Teixeira
18/01/2019
tente assim:
note que troquei o sinal de igual pelo operador 'in' e adicionei o group by
update
pcprodut
set
pcprodut.codgenerofiscal in (
select
substr(pcprodut.codncmex,0,2)
from
pcprodut
where
pcprodut.codprod in(10889,10890)
group by 1
)
where
pcprodut.codprod in (10889,10890)note que troquei o sinal de igual pelo operador 'in' e adicionei o group by
Consegui resolver usando a seguinte expressão:
update
pcprodut
set
pcprodut.status = (substr(pcprodut.codncmex,0,2))
where
pcprodut.codprod in(varios, codigos, numericos, separados, por, virgula);
commit;GOSTEI 0