sql - update com select

SQL

Oracle

SELECT

02/02/2020

preciso de ajuda para resolver o seguinte problema:

eu tenho a tabela DEPARTAMENTOS com as colunas ID_DEPT e NM_DEPT.
também tenho a tabela FUNCIONARIOS com as colunas ID_FUNC, NM_FUNC e ID_DEPT (sendo esta última a chave que liga as duas tabelas).

preciso transferir todos os funcionários do departamento cujo ID_DEPT seja 01 ou 02, para o departamento de ID_DEPT 03.

eu utilizo oracle. você pode me ajudar?
Matheus Silva

Matheus Silva

Curtidas 0

Melhor post

Anderson Gonçalves

Anderson Gonçalves

03/02/2020

preciso de ajuda para resolver o seguinte problema:

eu tenho a tabela DEPARTAMENTOS com as colunas ID_DEPT e NM_DEPT.
também tenho a tabela FUNCIONARIOS com as colunas ID_FUNC, NM_FUNC e ID_DEPT (sendo esta última a chave que liga as duas tabelas).

preciso transferir todos os funcionários do departamento cujo ID_DEPT seja 01 ou 02, para o departamento de ID_DEPT 03.

eu utilizo oracle. você pode me ajudar?



Fala boy,

Faça o seguinte.

Update FUNCIONARIOS
SET ID_DEPT = :ID_DEPT
Where ID_DEPT IN (SELECT ID_DEPT DEPARTAMENTOS WHERE ID_DEPT BETWEEN :INICIO AND :FIM)

depois passa os parametros e pronto funcionará perfeitamente.

Query.ParamByName('ID_DEPT').value := EditDepartamentoFuncionario.Text; // Aqui tem um edit que você digita 3
Query.ParamByName('INICIO').value := EditDepartamentoInicio; // Aqui um edit que você digita 1
Query.ParamByName('FIM').value := EditDepartamentoFim.Text; // Aqui um edit que você digita 2

Espero ter ajudado.

Mais ajuda me chama

Skype: anderson@case13.com.br
GOSTEI 1

Mais Respostas

Matheus Silva

Matheus Silva

02/02/2020

preciso de ajuda para resolver o seguinte problema:

eu tenho a tabela DEPARTAMENTOS com as colunas ID_DEPT e NM_DEPT.
também tenho a tabela FUNCIONARIOS com as colunas ID_FUNC, NM_FUNC e ID_DEPT (sendo esta última a chave que liga as duas tabelas).

preciso transferir todos os funcionários do departamento cujo ID_DEPT seja 01 ou 02, para o departamento de ID_DEPT 03.

eu utilizo oracle. você pode me ajudar?



problema solucionado, na verdade foi bem simples; tanto que foi a última coisa que eu tentaria.
minha solução foi a seguinte:

update funcionarios
set id_dept = 5
where id_dept in (1, 2);


obrigado mesmo assim.
GOSTEI 0
POSTAR