Если еще в SQL Сервер с несколькими операторами вставки - PullRequest
0 голосов
/ 20 марта 2020
select 
    din, driv_height, city, Driver_Addres_Posta_Code, DRIV_GENDER_ID 
from 
    driv_testing 

if DRIV_GENDER_ID IN ('M', 'F') 
begin
    insert into driv_success
end
else DRIV_GENDER_ID not in ('M', 'F')
begin 
    insert into error_logs (error_description) 
    values ('Gender fails')
end

У меня есть одна исходная таблица driv_testing и таблица приемников driv_success и error_logs таблица для записи неверных записей.

Если DRIV_GENDER_ID IN ('M', 'F'), тогда я хочу вставить в driv_success в противном случае вставить в error_logs таблицу ..

Но я получаю ошибку для вышеуказанного запроса.

1 Ответ

1 голос
/ 20 марта 2020

Вы не пометили свою СУБД, и я не распознаю синтаксис, который вы пытаетесь применить. Но обычно вставки в разные таблицы требуют отдельных операторов. Что-то вроде:

insert into driv_success (din)
select din
from driv_testing
where driv_gender_id in ('M', 'F');

insert into error_logs (din, error_description) 
select din, 'Gender fails'
from driv_testing
where driv_gender_id not in ('M', 'F');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...