À l'aide d'une table temporaire en vue
Je voudrais vraiment créer une vue.
Je sais que vous ne pouvez pas utiliser des tables temporaires dans MSSQL2005 points de vue. Sans réécrire le sql, il n'y a rien évident que j'ai manqué?
Plan de sauvegarde est d'utiliser une procédure stockée.
Acclamations
select * into #temp from vwIncidents
SELECT vwIncidents.incidentcode, employeecode, EMPOS.POS_L4_CDA as areaAtTimeOfIncident
into #temp1
FROM vwIncidents
INNER JOIN EMPOS ON vwIncidents.employeecode = EMPOS.DET_NUMBERA
WHERE EMPOS.POS_STARTC < vwIncidents.incidentdate
AND (EMPOS.POS_ENDD > vwIncidents.incidentdate OR EMPOS.POS_ENDD IS NULL)
order by incidentcode
select #temp.*, #temp1.areaAtTimeOfIncident from #temp
left outer join #temp1 on #temp.incidentcode = #temp1.incidentcode
and #temp.employeecode = #temp1.employeecode
order by incidentcode
Je suis sûr que vous pouvez supprimer la première COMMANDE PAR ...
OriginalL'auteur Dave Mateer | 2010-04-26
Vous devez vous connecter pour publier un commentaire.
Hav-vous essayé de réécrire ce, sans l'utilisation de tables temporaires?
Quelque chose comme
OriginalL'auteur Adriaan Stander
Vous pouvez utiliser une expression de table commune:
(Peut-être besoin de modifier la jointure d'un droit, mais vous voyez l'idée...)
OriginalL'auteur Mitch Wheat
Utiliser le
WITH
déclaration.OriginalL'auteur Marcelo Cantos