SQL Как я могу добавить НЕСКОЛЬКО ДАННЫХ, если не существует? - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть таблица с более чем 1500 записями, и я хочу вставить в другую таблицу данные, которые не содержат @Cot_NomArr = 'PAGO', а записи, которые я хочу вставить, являются переменной @Cot_Credit, таблица выглядит так:

ABCOTIZA
-------------------------
Cot_Credit | Cot_NomArr
-------------------------
5459892698 | DEBT
3649949499 | DEBT
6265662645 | PAGO
6265662645 | PAGO
6565626569 | DEBT

Итак, следуя моему запросу:

create table #TESTINT(
    Cre_Numero  varchar(15) 
)

select * from ABCOTIZA

DROP TABLE #TESTINT

/* VARIABLES*/
declare @Cot_Credit varchar(15)
/* CONSTANTES*/
declare @Cot_NomArr varchar(150)
/* DECLARACIÓN DE CONSTANTE*/
select  @Cot_NomArr = 'PAGO'

select @Cot_Credit = isnull(Cot_Credit,''),
       @Cot_NomArr = isnull(Cot_NomArr,'')
      from ABCOTIZA noholdlock  

if not exists (select distinct(Cot_Credit) from ABCOTIZA where Cot_Credit = @Cot_Credit and Cot_NomArr = @Cot_NomArr) begin
    insert into #TESTINT(Cre_Numero)
        values (@Cot_Credit)
end

select * from #TESTINT

я хочу, чтобы моя таблица #TESTINT в конце выглядела так:

#TESTINT
----------------
@Cot_Credit
----------------
5459892698
3649949499
6565626569

Потому что это те, у которых нет 'PAGO' in Cot_NomArr

Я использую ASE Sybase

Но не работает, не вставляются никакие данные ... пожалуйста, помогите.

1 Ответ

0 голосов
/ 27 апреля 2020

Это то, что вы хотите?

insert into #TESTINT (Cre_Numero)
    select a.Cre_Numero
    from ABCOTIZA a
    where a.Cot_NomArr <> 'Pago';
...