---
title: "INNER/OUTER"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/154479-inner-outer"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "clarkbones"
published: "2006-12-04T10:32:50.000Z"
updated: "2006-12-04T10:40:45.000Z"
replies: 1
views: 436
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/154479-inner-outer"
---

# INNER/OUTER

## #1 — clarkbones, 2006-12-04T10:32Z

Hej!

Jag ska selektera ett antal transaktioner i en värdepappersdatabas FS_Fond(SQL Server 2000). Problemet är att det inte finns kurser för samtliga värdepapper i tabellen HISTINST. INSTRUMENT innehåller värdepappersbeteckningarna.

Jag visar nedan en delmängd av SQL-satsen, där problemet ligger.

INNER JOIN (SELECT Instrument,Rate FROM FS_Fond..HISTINST H
	 WHERE HISTDATE=(SELECT MAX(HISTDATE) FROM FS_Fond..HISTINST WHERE INSTRUMENT=H.INSTRUMENT
	 AND HISTDATE\<=@ToDate)) lr ON lr.Instrument=t.InstrumentId

Min önskan är att även de transaktioner där värdepappret inte har någon kurs ska listas --\> Någon join borde ändras? Har försökt med LEFT/RIGHT/OUTER utan att lyckas.

Permalänk: https://www.webforum.nu/p/154479

## #2 — LarsG, 2006-12-04T10:40Z

```
left JOIN FS_Fond..HISTINST H
on  h.Instrument=t.InstrumentId
and HISTDATE = 
  (SELECT MAX(HISTDATE) 
     FROM FS_Fond..HISTINST 
    WHERE INSTRUMENT=H.INSTRUMENT
   AND HISTDATE<=@ToDate)
```

Permalänk: https://www.webforum.nu/p/1907193

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/154479-inner-outer
