0
Hi, I need to create a while inside a trial. I need to make a select before and from the records that this select return make an insert...
Example: Query searching the data of a donor that is not in the loyalty table, the results that this query return need to be inserted in another table one by one...
Can you help me?
What has been done so far.
CREATE PROCEDURE `gerenciar_fidelizados` ()
BEGIN
-- Declarando as variáveis
DECLARE _idDetentora INT; -- ID da operadora detentora do cadastro Fidelizado (Tabela operadora_fidelizados)
DECLARE _idDoador INT; -- ID do doador (Tabela operadora_fidelizados)
DECLARE _idDoadorInsert INT; -- ID do doador fidelizado que ainda não está na tabela dos fidelizados
DECLARE _idDetentoraInsert INT; -- ID da operadora detentora do doador que ainda não está na tabela de fidelizados
-- Consulta para buscar os Fidelizados que ainda não estão na tabela que vincula a operadora detentora ao seu doador
SELECT
contribuinte_id_operadora
, contribuinte_id
FROM
contribuintes INNER JOIN entidades ON contribuinte_id_entidade = entidade_id
WHERE
contribuinte_categoria LIKE '%Fidelizado%'
AND Desativado = 0
AND entidade_ativa = 1
AND contribuinte_id NOT IN(SELECT operfid_id_doador FROM operadora_fidelizado)
AND contribuinte_id_operadora <> 0
AND contribuinte_id_operadora IS NOT NULL
INTO
_idDoadorInsert,
_idDetentoraInsert;
END
Show what you’ve done and where you’re struggling, also take the sistehttps://en.stackoverflow.com/tour tour
– rnd_rss
I think you’re looking for something called
cursor
, to go through your select and then insert them into a particular table.– William