Использование int identity (1,1) как способ объединения временных таблиц - PullRequest
0 голосов
/ 21 февраля 2020

Я переписываю хранимую процедуру, которая использует int identity (1,1) в> 10 временных таблицах как способ объединения этих временных таблиц в операторе select. Ниже приведена более короткая версия того, как структура кода, но в хранимой процедуре, которую я там редактирую, эта структура используется для возврата данных из каждой временной таблицы.

      CREATE TABLE #temp_MemberInfo
(   RecID               int identity(1,1),
    MemberMBI           varchar(13),
    MemberName          varchar(50),
    MemberAddress       varchar(150), -- DMP
    MemberAddress2      varchar(100), -- DMP
    MemberCity          varchar(50),
    MemberState         varchar(3),
    MemberZip           varchar(11),
    MemberMedicalRecordNo   varchar(20), 
    MemberIsMale        varchar(10),
    MemberIsFemale      varchar(10) 
)
    CREATE TABLE #temp_ProviderInfo
(
    RecID               int identity(1,1),
    ProviderNPI         varchar(13),
    ProviderName            varchar(60), -- DMP
    ProviderAddress     varchar(150), -- DMP
    ProviderAddress2        varchar(100), -- DMP
    ProviderCity            varchar(40),
    ProviderState           varchar(3),
    ProviderZip         varchar(11),
    ProviderTelephone   varchar(15) )


    Select *
    from #temp_MemberInfo
    Inner Join #temp_ProviderInfo on #temp_ProviderInfo.RecID = #temp_MemberInfo.RecID

Альтернативой, которую я могу придумать, было бы использовать существующий первичный ключ в базе данных, но мне нужно будет присоединить дополнительную таблицу в операторах обновления. Это лучше с точки зрения производительности? Есть ли другие альтернативы, которые я не рассматриваю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...