Мне нужно создать хранимую процедуру для вставки данных в одну таблицу из другой на основе некоторых условий. В существующей таблице, если два столбца (основная роль и вторичная роль) имеют одно и то же значение, тогда я хочу только одну строку в новой таблице с ролью в качестве основной роли.Как вставить строки в новую таблицу из другой таблицы на основе некоторых условий в Sybase?
В случае, если строка в старой таблице имеет разные значения в первичной роли и вторичной роли, я хочу, чтобы две строки в новой таблице имели значение роли в качестве основной роли старой таблицы, а другое как вторичное.
Каков наилучший способ достичь этого?
Сейчас мой запрос выглядит примерно так
create procedure proc as
begin
insert into newTable values(role)
select primary_role as role from oldTable
where primary_role = secondary_role
end
Это не обрабатывает случай, когда главная роль не то же самое, как второстепенную роль.
Sample
sample row oldTable
PrimaryRole | SecondaryRole | Name
admin | analyst | Sara
sample row newTable
Role | Name
admin | Sara
analyst | Sara
Можете ли вы дать некоторые выборочные данные, объясняя дело с различными значениями в главной роли и второстепенную роль? То есть строка в oldTable и две новые строки в newTable. – jarlh