J'ai une procédure stockée de ce formatOptimisation des requêtes
if(condition 1)
begin
(
-----
-----
select into #temp1
----
drop #temp1
)
end
if(condition 2)
begin
(
-----
-----
select into #temp1
----
drop #temp1
)
end
maintenant lorsque la procédure stockée ci-dessus est l'exécuter me montre une erreur que:
"There is already an object named '#temp1' in the database."
Lorsque je modifie la procédure stockée comme ,
if(condition 1)
begin
(
-----
-----
select into #temp1
----
drop #temp1
)
end
if(condition 2)
begin
(
-----
-----
select into #temp2
----
drop #temp2
)
end
Cela fonctionne bien.Mais je veux optimiser cela en raison de la créatinine g trop de tables temporaires.
Quelqu'un peut-il m'aider à ce sujet?
Ne pouvez-vous pas faire un 'insérer si n'existe pas dans ....', Quel sql engine/server utilisez-vous? – RobertPitt
Je suppose que la condition 1 et la condition 2 ne s'excluent pas mutuellement? Est ce que '# temp1' et' # temp2' ont la même structure? –
pouvez-vous confirmer si vous utilisez SQLServer, et si oui, quelle version? –